c语言程序设计论文范文
时间:2023-03-26 12:11:37
导语:如何才能写好一篇c语言程序设计论文,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
西安理工大学工科非计算机专业和计算机专业虽然都开设C语言程序设计课程,但是前者具有鲜明的专业特点,对该课程的要求明显不同,仅仅按照“面向对象教学”的原则,适当调整教学组织活动和教学内容对于后者是远远不够的。针对目前工科非计算机专业C语言程序设计课程教学实践中所暴露的主要问题,笔者积极开展了非计算机专业C语言程序设计课程教学设计的教改工作。
1.1教学设计概述
所谓教学设计,就是为了达到一定的教学目的,对教什么(课程、教学内容等)和怎么教(组织、方法、媒体的使用等)进行设计。教学设计不等同于传统的备课写教案。教学设计有利于教学工作的科学化,使教学活动纳入科学的轨道。教学设计的意义就在于追求教学效果的最优化,不仅关心教师如何教,更关心学生如何学,注重将人类对教与学的研究结果和理论综合应用于教学实践。教学设计主要包括确定教学目标、组织教学内容、分析教学对象、选择教学形式和方法及教学媒体、设计教学过程、教学质量评价设计等基本环节,其中,设计教学过程是课程教学设计的核心。
1.2该课程教学设计的内容
西安理工大学C语言程序设计课程组于2003年出版了《C语言程序设计教程》及配套的《C语言程序设计教程上机实验与学习指导》特色教材。自2011年开始,非计算机专业选用的教材与计算机专业不同。目前非计算机专业选用《C语言程序设计》(第1版,张毅坤教授,高等教育出版社,2011)作为该课程的教材。非计算机专业C语言程序设计的教学设计是一项复杂的系统工程,主要包括课程教学设计、章节教学设计、课堂教学设计和实验教学设计,以西安理工大学C语言程序设计课程教学大纲为指导,以《C语言程序设计》(第1版)及其配套教材为基础,确定课程教学设计的内容:①将该课程的教学目标确定为“掌握C语言的基本语法和语义,理解结构化程序设计的思想和方法,提高学生的编程能力和调试程序的能力”。②组织教学内容的关键是进行教材的组织呈现,理论教学内容包括《C语言程序设计》(第1版)的第一章至第八章,实验教学体现于该教材的第九章及配套教材。③学生作为教学对象始终是教学过程中的重要角色,工科非计算机专业的种类多,分析教学对象就是掌握学生特点与了解专业背景并重。④重点突出课堂教学设计,传统教学与案例教学有机结合,“讲解+多媒体演示+课堂板书”缺一不可。⑤设计教学过程与“组织教学内容”联系最为紧密,主要包括课堂教学设计和实验教学设计,教学过程设计遵循的总原则是:激发学生兴趣,注重能力培养,合理安排教学顺序,讲清重点与化解难点紧密结合,课堂提高与课后巩固拓展有机统一,并预测教学实践中可能出现的意外情况。⑥将学生评价、同行评价、教学督导组专家评价、主管教学的领导评价和教师自我评价这几种评价的结果综合起来,比较客观的评价教学效果与教学质量。
2教学设计的实践及效果
我们连续多年承担非计算机专业C语言程序设计课程,先后承担过西安理工大学电气工程及其自动化(电力)、水文与水资源工程、印刷工程、包装工程和材料科学与工程等专业的C语言程序设计的理论教学和实验教学任务。始终将上述教学设计的内容贯穿于课堂教学和实验教学之中。C语言程序设计本身是一门实践性很强的课程,加之各个理工科专业的特色鲜明,所以结合学生所学专业特点与需求,同一门课程,针对不同专业的学生,适当调整教学设计内容,并在教学实践中检验教学效果。2012年以来,学生对笔者的教学评分一直在95分以上,也给予了肯定性的评价,例如“采用启发式教学,阐述问题深入浅出,重点突出,能理论联系实际或联系学科发展的新成果”;“对于您的授课方式我们很满意,感谢您对这门课程的热忱,我们会努力学下去”;等等。
3结语
篇2
1 实践课程简介
本课程属于我校计算机类本科生的第一门专业基础实践课,课程内容包括C++语言程序设计的理论和实践两个部分。基础理论部分内容包括C语言程序设计的基本概念、C++面向对象程序设计、类、对象、继承、派生、多态、模板等概念。实践部分则包括C++语言程序设计的基本训练、类和模板的设计编程、几个算法的实现、简单应用等。
C++语言程序设计是计算机类本科生的一门程序设计语言基础课程,虽然现在大多数程序员使用Java语言做项目开发,但作为程序设计的入门语言,考虑到在培养程序员思维方式的转变过程中,既要兼顾理解计算机硬件和软件的结合,又要程序员从传统的数学逻辑思维方式继承并成功转型到计算机逻辑思维方式。目前也只有C或C++语言能够较好的满足这种需求。
本课程注重采用C++编程语言的最新国际标准[1],结合我们学校实验室硬件的情况,尽可能采用国际上正在流行的比较新的编程软件进行实践教学。使得课程的讲授内容始终跟踪C++程序设计语言的前沿性和先进性。积极学习和引入国内外同行的先进教学方法和教学案例。简单介绍C++语言程序设计的几个流派、现实的应用情况及未来发展趋势。
本课程强调学生在认真听课、阅读理解课本上的有关程序设计的概念、方法外,还要善于利用互联网的资源,特别是学习C++语言程序设计的几个官方网站、几个行业大牛的网站上的知识。在理解理论的基础上展开实验验证,不断的修正自己的理解偏差,使自己学到的知识不断完善,形成体系,为后续课程的学习打下一个坚实的基础。在C++语言程序设计实践教学过程中,强调合作能力的培养,团队意识的形成。自2004年以来,本课程教学效果得到学生的一致肯定,锻炼和培养了学生的实践能力,比较好的完成了本门课程的教学任务。
2 实践教学目标
本课程的实践教学目标包括:学生通过本课程的学习、实践,让学生从中学生传统的数学思维方式转变为结合计算机软硬件特点和计算机逻辑的计算机思维模式去分析问题、编写程序、实现解决问题。通过C++语言程序设计课程的实践训练,了解什么是面向对象的设计思想,养成良好的程序设计风格。利用C++语言程序设计来解决一些实际问题;学会自顶向下,逐步细化,会把复杂问题拆解为几个更为简单的问题,利用面向对象技术进行设计和编程。培养团队协作和开放意识,为计算机类专业后续课程的学习打下一个良好的基础。
3 实践教学方法、手段(举例说明采用的各种教学方法及手段的使用目的、实施过程、实施效果)
①建立以转变传统数学逻辑思维方式为结合计算机软硬件特点的计算机逻辑思维方式为主线的,分层级、渐变式的实验教学体系。首先训练学生学习计算机编程的三种基本逻辑,数组等数据的组织方式,学会排序等几个简单常用算法、解决一些简单问题。然后学习把数据和定义在数据上的操作整合在一起引入类的概念、学会类的定义、理解继承、派生、多态、学会模板的定义和使用、学习文件的使用方法。使学生养成良好的程序设计风格、形成计算机逻辑思维模式。
②采用灵活多变的教学方法,加快提高学生的编程能力。实践教学过程中,针对一些具体的例题,先解决基本问题,然后分析对于一些语句进行适当修改和加入新的语句就可以解决类似的其他问题。设计、利用一些实验数据发现所设计的程序的关键性问题,然后引导学生去解决此类问题。因为本门课程是学生接触的第一门实践性课程,教学过程中引出的问题有些是当前阶段可以解决的,一些问题还要通过后续课程的学习提高能力后才能解决,不一定马上就要把问题解决掉、重点是培养学生继续学习的兴趣。激发学生自主学习的积极性、主动性和能动性。
鼓励学生自主组建C++语言程序设计兴趣小组去找协作课题、完成课程设计作业。实验课堂上也鼓励学生多走动、多交流。建立网上资料、技术分享机制、鼓励学生分享解决问题的方法,老师根据学生的分享情况,适当增加学生的平时成绩。
③逐步建立学校和社会的协同培养模式。在教学过程中,课外时间如有可能,适当组织部分学生走出校门,利用校友资源,组织参观企业、科研院所、地方政府等单位在计算机方面的应用情况。了解社会需求、拓展视野、激发学生学习本专业的积极性。形式多样的人才培养协同创新模式。教学团队通过学院与广州易数信息科技有限公司、广东省信息安全测评中心、广州杰赛科技股份有限公司、广州腾科网络技术有限公司等企事业单位建立了长期战略合作关系。这些都为创新型人才培养打下了坚实的基础。
4 实践教学考核方法
本课程的总评价分数包括平时考勤,平时作业,中段考试、期终前上机考试、课程设计与新技术资料翻译,期末考核六部分。分别占10%、10%、15%、15%、10%、40%。其中,平时作业主要是针对课程中每章节后,为巩固所学内容所布置的习题编程实现;课程设计则主要是训练学生的协作能力和解决实际问题的分析、设计、编程能力、要求提交一份相对完整的设计文档;英文资料翻译采用自主选择网络上国外近半年来计算机类的英文资料、鼓励组团分解翻译大块文件,要求每人翻译至少2个A4版面。期末考试通过闭卷方式考核程序设计的能力,期终考试占总成绩的40%。
5 实践教材
本课程的实践教材为本课程主持人及参与人员王玉山等所编著的《C++语言程序设计实践》,该教材现在只有电子稿,还没有正式出版。
6 实践教学环境和教学资源
本课程的实践教学环境为:①学习版的微软公司的Visual Studio Visual C++的集成开发环境。②Bloodshed Dev-C++(C++开发工具)V5.11.0中文免费版。③奇趣科技开发的跨平台C++图形用户界面应用程序开发框架Qt。
教学资源:
①课程概要:课程简介、教学大纲、课程特色、教学效果。
②在线课堂:课程PPT。
③实验指导:实验指导书和实验报告。
④部分大作业选题目录。
⑤C++语言程序设计课程及研究常用、重要网址列表。
7 实践教学效果
经过多年探索和实践,教学团队在人才培养模式、教学方法、实践教学改革、试验教材编写等方面取得了一定的成绩。团队成员发表相关教改论文10余篇,获得过2010年广东省千百十校级人才项目,主持广东外语外贸大学校教学研究课题“毕业设计管理系统”,2010年度、2012年度广东外语外贸大学优秀科研业绩奖二等奖,周咏梅和林华两位老师获得过年度优秀个人。教学团队成员具有丰富的教学改革实践经验和理论基础,保证了本门实践课的教学质量。
通过大作业与新技术资料翻译,提高了学生主动学习的积极性、培养了团结协作精神。提高了解决问题的能力。组织部分学生到相关企业参观、坚定同学们学习本专业的积极性。
指导学生积极开展科研实践和申报项目,获得成绩如下:
①在王玉山老师的指导下,软件系2015级大学一年级新生林泽聪等获得了广东省团委的攀登计划项目:个人健康档案,获得资助2万元。
②在周咏梅和蒋盛益老师指导下,彭金原等同学获得广东外语外贸大学校级大学生创新创业项目:网络舆情构建关键问题研究―以微博客为分析对象(2011年校级);黄确君等获得:面向高校图书馆的推荐系统(2012年校级)。
国家级学科竞赛获奖情况:
Innc多媒体解析语言,2007年在天津举办的全国第10届挑战杯比赛3等奖,2004级软件工程专业,文羲畅。指导老师王玉山。该项目同时获得广东省2007年第九届挑战杯1等奖。
省级学科竞赛获奖情况:
①四灵象棋――基于互联网与移动设备联合开发,广东省第18届“高校杯”软件作品赛一等奖,2006级计算机专业:郭勇、刘荣科、何健,指导老师:林华、蒋盛益、吴彩虹、王玉山。
②基于Web3d的网上服装商城 , 第十七届广东省“文泰高校杯”软件设计(本科组)竞赛1等奖, 2004级软件工程专业学生,指导老师,王玉山。
泛珠三角安利杯大学生计算机作品赛:
2006级计算机专业,陈俊平,余雯. 基于C++语言程序设计的垃圾邮件识别系统, 泛珠三角大学生计算机作品赛广东赛区, 二等奖,2009。
2006级计算机专业学生,“任意达”――私人定制高校客车联盟系统,大学生计算机作品赛暨泛珠三角大学生计算机作品赛广东赛区选拔赛三等奖 , 指导教师林华。
8 实践课程特色及价值
《C++语言程序设计》作为大学计算机类1年级新生的第1门实践课程, 肩负着既要把学生从传统的数学思维方式向结合计算机软硬件特点的计算机思维方式转变,又要转变学生的应试教育模式学习方式向探索式、实证式、协同式、全球互联网求助式、开放式教育学习方式转变。还要求学会面向对象的程序设计思想方法,为后续课程的学习打下一个良好的基础。课程内容本身要求理论联系实际、在理解理论的基础上进行实践验证并不断修正、完善自己理论体系。学习本课程后,要求能够进行面向对象的类的设计,能够解决一些实际问题。本课程的特色和价值主要表现在:
①课程内容理论联系实际,所用软件实验工具、环境要符合时代需要、要采用最新的C++语言程序设计国际标准进行实验讲学,在试验中老师要善于对于同一个程序代码、进行适当变换就可以讲解、实验几个概念和方法,争取用较短的实验时间获得尽可能大的教学效果。
篇3
当前社会职业的多样化,学生就业的需求,高等教育中非计算机专业的计算机基础课程体系也应该有相应的改革,使得新的课程体系,可以提供给理科、工科、文科、艺术类等其他不同的专业进行计算机基础教育时更丰富的选择。使各个专业的毕业生将来在择业时在计算机教育上能够更贴近用人单位的要求。《非计算机专业计算机公共基础课的教学改革与实践》的主要的目标针对我校非计算机专业计算机公共基础课教学进行课程体系改革的研究与实践,与此相应的教学方法、教学内容、教学模式、实验教学、教材、计算机基础课程考核方法应同步改革。
二、我校的计算机基础教育新旧课程结构的比较
根据高等教育的发展,对我校非计算机专业的计算机基础教学提出了新的要求,相应的课程体系改革为:计算机基础分为大学计算机基础、计算机技术基础和计算机应用基础三个层次,为必修课或选修课。其中:理工类建议选择C语言程序设计、java语言程序设计等,文科类选择VB程序设计、web程序设计等;第四、五学期各专业可根据专业培养需要选择。同时为了使同学们能更好的掌握知识,将《C语言程序设计》《java语言程序设计》《VB程序设计》《web程序设计》《动漫设计》课程分为两个学期完成,称为《C语言程序设计(1)》《C语言程序设计(2)》,其他课程以此类推。
三、教改具体措施以及效果
(一)全程机房教学,增强动手能力
教学方法是为实现教学目标、完成教学任务所采取的措施。传统的三中心(教师、教材、课堂)教学方法既不适应社会发展的需求,也不符合计算机教育的特色,必须改革。我校的《大学计算机基础》由原来的课堂教学,改为全程机房教学,使同学们在边听教师讲解的同时,可以直接上机进行操作,在学习理论知识的同时,可以立刻得到对计算机操作的感性认识。通过三个学期的教改实践,完善了全程机房教学模式,对同学们使用计算机的动手能力有很大的提高。
(二)配套教学软件,提高学习能力
本课程组为《大学计算机基础》课程开发了一个《大学计算机基础辅导练习系统》,该系统分为抽题模块、答题模块、判卷模块,本系统为C/S结构,当管理员在服务器端设置好本次模拟练习的题型比例后,系统自动生成一套模拟试卷;所有的同学们可以在客户端进行答题,当答卷完毕时,由服务器端自动进行判卷并将本次练习的结果反馈给同学们;该系统可以提供给学习本课程的同学们经过教师的指导后,在课堂内外自行进行练习。以便同学们完成练习后,自己可以评判自身的学习程度,并在下一阶段的课内外学习中调整自己的学习状态。本系统已经提供给2005级大一学生进行了初步使用,体现了较好的作用。
(三)开发网络平台,整合教学资源
本课程组在调研了周边各高校的计算机基础教育的情况,开发了一个本校的《计算机基础教育中心教学平台》,在本教学平台上,提供了基础部课程的相关介绍,教学信息的,教学资料的下载等等功能,可以提供给任课教师所任课程重点难点详细介绍。对课堂教学起到了很好的补充作用,方便了同学们在课余时间继续学习计算机基础课程。在本课题的后续时间里,拟设计开发计算机基础教学课程的基于校园网教辅系统,使得同学们可以开展课余时间自由学习。该平台具有以下优点:①发挥以计算机为基础的现代多种媒体的作用,使教学信息组织超文本化。多媒体的超文本特性可实现教学信息最有效的组织与管理。②在培养高级认知能力的场合中,因特网和校园网是协作学习的主要形式,实现了协作式教学。③教学过程的生动性是多媒体计算机的强大魅力之所在。在教学中可以同样重视教与学这两个部分。强调学生的参与意识,教与学成为两个相辅相成的部分。调动学生学习的主动性,培养学生的“发现式”学习能力,使学生不仅学会,而且会学。④在短时间里要获得大量的信息与知识,这在传统的教学模式中是可望不可及的,而以多媒体网络作为传播信息的渠道,使教师与学生、学生与学生之间,可以同时传播大量的信息,大大提高教学效率。
(四)编制多媒体课件,增加课堂吸引力
根据我校计算机基础教学的实际情况,我们重新编制了《大学计算机基础》《计算机程序设计A》《计算机程序设计B》的电子课件,使之更符合我校的实际教学情况,更符合浙江省计算机等级考试的要求。其中《计算机程序设计A》课件获得中国计量学院首届多媒体课件竞赛二等奖。改编后的课件具有以下优点:界面清晰、美观,结构清晰,例题丰富、并附有书本外的课后习题。
(五)出版教辅材料,同步教学改革
根据高等教育中对计算机基础教学提出的新要求,和结合浙江省计算机等级考试的要求,本课题组编制了《C语言程序设计实验与习题指导》面向21世纪高等院校计算机系列规划教材,该教材由“科学出版社”出版,并于2005~2006学年第二学期开始投入我校、浙江工业大学等高校使用;根据我校学生应考浙江省计算机等级考试的需要,本课题组编制了《C语言辅导与讲义》、《VB程序设计辅导与讲义》,并与2005~2006学年第一学期开始投入使用,学生们反映良好。
(六)开发考试系统,改革测试手段
计算机基础课程是一门应用技术学科,主要凭试卷来检测大学生的学习效果,并不能完全反映出学生的实际能力。而且试题类型目前多是测试学生对所学知识是否了解,不是考核学生解决问题的能力,并没有挣脱应试教育的樊笼,严重影响了创新型人才的培养。现在这种考试方法,使得学生为了考试而学习,不能提高学生学习的积极性,不能发挥学生的创造力,这种考试方法与素质教育大相径庭。本课题组开发了《大学计算机基础上机考试系统》,本系统具有抽题功能、答题功能、判卷功能、存储功能、输出功能,对其中的实践部分从以前的“纸上谈兵”改为“上机实战”。其中的判卷功能、存储功能、输出功能也使得该课程实现无纸化考试,该考试系统于2004~2005学年第二学期开始投入使用。新的考核方法给了学生一个发挥才能的空间,变被动的死记硬背为灵活的实践操作,使学生成为知识的主人。
四、实际作用与效果
通过对非计算机专业计算机公共基础课的教学改革与实践,对提高教学质量,效果明显。我校非计算机专业学生在学习C语言和准备迎接浙江省计算机二级考试中,选择了我校自行编制的《C语言程序设计辅导与讲义》《VB程序设计辅导与讲义》,取得了较好的成绩。 在该完成该课题的过程中,陆慧娟老师等于2005年11月在“首届大学计算机基础课程报告论坛”发表了《多科性大学计算机基础教学课程体系的改革与实践》教改论文,该文以本校的计算机基础教学为背景,探讨了非计算机专业计算机基础教学课程体系的设置、教学方法的改进和师资队伍建设等问题。黄俊老师等于2005年11月在“首届大学计算机基础课程报告论坛”发表了《配对编程教学模式在程序设计课程教学中的探索与实践》教改论文,配对编程方法是两学生并排在一台计算机上工作,协同完成一个设计、代码编写和调试的新的程序设计学习方法,该文对配对编程教学模式在计算机基础课程教学的应用进行了探索与实践,提出了配对编程在程序设计基础教学过程中存在的问题和解决的办法。
篇4
关键词: C语言 提高 教学质量 对策
一、引言
目前,许多高等院校开设了《C语言程序设计》这门课程。然而,学生普遍认为这门课程枯燥难懂,没有学习信心和兴趣,学习效果不容乐观。教师作为教学过程的主导者,有责任认真反思教学中存在的问题,创新教学观念,改革教学方式,努力增强教学效果。
二、现状分析
1.C语言自身有一定难度。
C语言涉及的概念复杂、规则繁多、语法严格、使用灵活,且基于DOS运行环境缺乏直观性,一般的编程枯燥乏味。以上特点给师生的教学和学习带来了一定的难度,严重制约了学生主体作用的发挥。
2.教学要求相对专业培养目标孤立。
《C语言程序设计》作为一门重要的基础课程,要为后续的数据结构、操作系统、编译原理、面向对象程序设计等课程打下坚实的基础。然而,课程教学大纲如何不闭门造车,适应专业培养目标的整体要求?其修订工作往往为人所忽视。
3.缺乏较好的教学方法[1]。
尽管当前大多数《C语言程序设计》课程采用了多媒体教学手段,然而,多数依然沿用以教师和教材为中心的讲授教学模式,基本上把教材的内容原封不动地输入到课件,形成了效果更差的以课件为中心的模式。在这种模式下,学生往往按照教师的讲授速度被动学习,缺少及时地消化理解,更谈不上进行知识的内化和再创造,丧失学习兴趣的也不在少数。
4.重理论,轻实践。
教师容易走入一个误区,即把授课重点放在大量的概念、术语和语法解释上,忽视程序设计思想和能力的培养。许多教师不能对实践环节进行系统的教学设计,往往把上机作为验证理论的手段。尽管教师们不愿承认,但正是这种重理论、轻实践的思想使得学生的学习目标模糊不清、学习方法事倍功半,枯涩难懂的抽象理论甚至把一些学生拒之门外。
5.学生学习目的不明确,学习积极性不高。
一些非计算机专业的学生认为这门课程与所学专业毫不相关;一些计算机及相关专业对编程有所了解的学生认为C语言是过时的语言,应该学一些C++、JAVA等当前主流的语言。还有许多学生习惯于应试教育下的教学模式,一旦遇到困难就会产生畏惧、排斥心理。基于以上种种原因,许多学生对学习C语言没有兴趣,毫无疑问对增强教学效果起到了负面作用。
6.学生学习水平参差不齐。
有些学生基础较差,高中阶段未学过计算机语言,甚至没有接触过计算机;有些学生逻辑思维能力强,不满足于课堂上教师教授的知识;有些学生学习能力相对较弱,理解和掌握各知识点速度较慢;有些学生不重视实验,课前不预习,上机就是机械地打字,课后抄袭实验报告;有些学生反映上课能听懂,上机时不知从何下手;上课开小差、打游戏的学生更是屡见不鲜,等等。面对这些千差万别的教学对象,大多数教师采取折中的方法,即以中等学生的学习能力作为教学的标准,这种“齐步走”的方法使相当数量的“两端”学生逐渐失去了学习的兴趣。
三、对策研究
教学是教与学的总称,教学活动由教师、学生、教学内容和教学环境等四个要素组成,这些因素互相作用,共同影响着教学活动的效果。以下针对四个要素分别阐述提高教学质量的对策。当然,在实际应用中要把它们看做一个有机的整体。
1.教师层面。
(1)转变观念,努力提高自身素质。
教师要树立以学生为本的理念,明确以培养学生的程序设计思维、创新意识和实践能力为目标,努力提高自身素质,尤其是教学设计和实践教学能力,争取成为“双师型”教师。
(2)以人为本,强调因材施教。[2]
教学目标归根结底是让学生学到了什么,而不是教师教了什么。在教学过程中,应以学生为中心,以激发学生的学习兴趣、提高学生的能力为关键,针对学生的需求和特点组织教学,根据学生的反馈及时调控教学进度,同时注重不同层次学生的差异,针对学生实际的认知水平和能力水平,因材施教。
(3)认真钻研,不断改进教学方法。
所谓“教无定法”,教师、学生、教学内容、教学环境任何一个因素的改变均可使用不同的教学方法。因此,教师应认真研究教学规律[3],根据学生基础、教学目标、教学内容、教学条件,对教学方法进行不断深入的改革和实践,方可保证教学质量的稳步提高。
在多年的实践过程中,广大教师已总结了不少值得借鉴的教学方法,如讨论法、演示法、实验法、案例法、发现法等。在教学过程中,不能盲目照搬他人模式,应将各种教学方法相互融合,力求做到深、活、透、新,建立完整的教学模式体系。
2.学生层面。
(1)激发学习兴趣,端正学习态度。
教师通过明确C语言在专业学习中的地位、精心选择教学内容、合理设计教学方法,不断激发和保持学生的学习兴趣。然而,学习不能仅凭兴趣,更要有持之以恒的精神和毅力。特别是随着学习目标的不断提高,困难也会越来越多,此时教师要多加引导,帮助学生克服畏难情绪,端正学习态度。
(2)明确学习特点,强调学习方法。
C语言概念复杂,使用灵活,不能局限于基本语法和规则的掌握,更强调程序设计的思想和方法。鉴于此特点,教师要引导学生重视实践在学习过程中的重要地位,采取适合自身的学习方法,在程序设计、调试分析的动态过程中达到预期目标。
(3)理论联系实践,重视实验环节。
有些老师把实验课完全交给了学生自主进行,教师的任务是为有疑问的同学解决问题,这种方式是极不可取的。实验环节“教师主导,学生主体”的模式仍要贯彻执行。教师不仅要进行讲解答疑,而且要明确教学目标,安排实验任务,分析典型算法和解题思路,鼓励学生独立完成。
(4)加强程序设计思维训练。
程序设计课程的基本任务就是训练学生的逻辑思维和程序设计思维能力。在教学中,要淡化语法、强化算法,把算法分析与设计思想贯穿于程序设计的教学过程中,为以后编写程序、软件设计奠定基础。
(5)培养自主学习和创新思维能力。[1,4]
教师要“传道、授业、解惑”,我认为“传道”即“授人以渔”。教师传授的知识往往是抽象、机械、静止、片面和孤立的,学生不知道如何灵活地综合运用这些知识解决实际问题。因此,培养学生自主学习和创新思维能力,对解决本门课程乃至工作岗位上的问题至关重要。
3.教学内容层面。
(1)针对专业,制订教学大纲。
教学大纲是教学活动的重要依据,要明确学生在知识、能力、素质等不同层面上要达到的要求。不同的人才培养目标必然由不同的知识和技能构成,目前我们缺乏细致的教学研究,除认真分析各专业的共同点之外,更要深入挖掘各专业对程序设计基础能力的不同要求。
(2)依据大纲,精选教学内容。
无论教材编写得多好,其深度和广度不一定适合本校学生的具体情况。因此,教学内容不能等同于教材,教师应根据教学大纲的要求,认真钻研、补充、优化教材,采取“有所取、有所不取”的策略,精心选择教学内容。
在课程内容的设计上,不宜过分注重语法知识,而应该重点强调程序设计技术的基本方法,要合理选配和组织那些基本的、核心的、重点的内容,做到少而精,对于一般性的、扩展的内容,可以组织学生进行课外自学。
(3)减少验证性实验,增加综合性、设计性实验。
在实验环节设计上,要注意验证性、设计性和综合性实验的比例,在保证验证基本理论和训练基本技能的基础上,增加设计性和综合性实验项目。有些高校在课程结束时增加了实训或课程设计环节,使学生对所学知识综合运用、融会贯通,这将有利于培养学生的创新思维、独立分析和解决问题的能力。
(4)合理设计作业任务。
针对每堂课的知识点,安排适量作业,以便及时强化和巩固所学内容。作业布置要符合学生的学习目标和学习规律,难度和题型要适合学生学习状态,兼顾理论和实践形式,兼顾语法规则和算法设计。还要针对作业中存在的问题,及时适当调整下堂课的教学设计。
4.教学环境层面。
(1)合理运用教学手段。
利用现代化的教学手段,可以丰富课堂教学内容,提高课堂教学效率,降低理解难度,达到直观、快速、标准、深刻的教学效果。然而,要防止对现代化教学手段的盲目和随意使用,为达到不同的教学目标需要选择不同的教学媒体。在适当的时候,“黑板+粉笔”是最佳的媒体选择。
(2)建立课程网站。
课程网站通常提供教学大纲、教学日历、电子教材、授课录像、多媒体课件、实验指导、作业与习题、网上答疑、在线测试及经验交流等功能。有效地利用课程网站可以调动学生的学习积极性,弥补教师在因人施教难免存在的不足,为教学质量的提高起到重要的保障作用。
四、结语
以上是我近十年来在《C语言程序设计》课程教学改革中一些体会。随着社会需要、计算机发展和学生知识结构的变化,对该课程的深入改革是一项长期而艰巨的任务,但只要勇于探索,善于总结,就一定可以取得理想的成效。
参考文献:
[1]董卫红.C语言程序设计的教学改革与实践[J].常州轻工职业技术学院学报,2007,(1):35-38.
[2]谢少安.关于大学互动教学设计的探索与思考[J].教育探索,2010,(223):61-63.
篇5
关键词:C语言;课程体系;融合教学;融合实践;卓越工程师计划;ACM/ICPC
C语言程序设计既是高等学校一门重要的公共基础课程,也是计算机专业的一门专业基础课。由于逻辑性和实践性强,使该课程的教学和实践存在一些误区,主要表现如下。
1) 学生不清楚本专业的特点。多数高校将本课程安排在大一的第一学期,由于对于本专业的课程体系了解不够,导致新生对各专业特点混淆不清,有的学生去报考计算机等级考试,结果有的还不如非计算机专业的学生,致使一些学生学习消沉。我们通过和学生谈心,得知不只是大一有这种现象,大二的学生甚至也存在这种心理[1]。
2) 学生学习本课程目的不明确,兴趣不高。在教学中,有不少学生问,既然C#和Java是现在的主流编程语言,为什么还要让我们学习C语言?所以我们在第一堂课介绍计算机语言发展时,将C语言和其他语言作比较,强调C语言是当前程序员共同的语言,它使程序员互相沟通,比流行语言都更接近机器。C语言更适合解决某些小型程序的编程,在编写底层的设备驱动程序和内嵌应用程序时,往往是更好的选择。有了C的基础,在需要时进一步学习其他语言,也是很容易过渡的。当然,第一堂课上,我们把重点放在培养学生的兴趣上,所以会用1个学时去展示历年实训的优秀作品,这些作品都是完整的系统,除了包涵基础知识,还有高级技术。我们向学生灌输学习这门课程的境界:Beginner―Advanced―Professional。
3) 任课教师对课程的定位、理解和把握不够。老师只有有一桶水,才能教给学生一碗水,教得了学生不等于教得好学生,学生的评教正说明了此问题。
通过实践,我们对计算机专业本课程教师的要求是:“复合型”的教师――既要精通这门课程,还要有3年以上实际项目开发经验,并且非常熟悉计算机其他学科的知识,而“教师的成功在于培养出值得自己崇拜的人[2]”。
因此,我们对本课程的定位是,以程序设计为中心,掌握语法,了解算法,重在算法的实现――编程。算法是灵魂,语法是基础,编程是中心。处理好三者的关系,直接决定了教学的成败。
算法尽管重要,但本课程不是算法设计课程,不可能过多地介绍算法,更不是在研究算法。我们要在学生学习编程的过程中,介绍相关的典型算法,引导学生面对问题去思考如何构造算法,编写程序的过程本身就是设计算法的过程。
为此,我们对本课程体系进行了改革,并将本课程与计算机其他学科进行了融合教学与实践,取得了非常好的效果。
1课程体系的改革
1) 修改教学环节。
我们把原计划一学期的教学时间调整为一学年。第一学期进行C语言程序设计基础的教学,第二学期进行C语言程序设计的进阶教学,在学年末进行该门课的实训,接着的暑假进行校外实习。根据不同专业,我们还开了小学期,在小学期里有连续12周的实验环节。
2) 修订培养计划和大纲,改革考核方式。
我们把本课程的教学改革与本学院的“卓越工程师计划”相结合,组织教师外出考察、研讨,然后重新修订了培养计划、教学大纲、实验大纲、实训大纲、实纲。相应地,考核方式也作了调整:基础教学由笔试转向机试,试题难度高于非计算机专业的等级考试,每次考试的题库都将重新命题和审阅。进阶教学由考试转向完成3 000行以上大作业形式的考查,实训由过去的全班一个模拟题目转向提供多个实际验收签定过的项目,进行C版本的再次开发,实习由过去的只是到实习基地参观调整为直接进企业拜师跟班学习。
3) 丰富配套的教学资源。
我校组织编写了《C语言程序设计基础及进阶教程》,被评为“十一五”国家级规划教材,已于2010年由清华大学出版社出版发行。我们还配套编印了上机实验的实践教程(将在今年教材的第二版时一并出版),以及实训时的实训教材和实习的实习教程,并建设了精品课程在线学习平台,供师生讨论和交流。制作了与教材配套的课件与教案,供教学参考。
我们专门搭建了学校ACM/ICPC在线测评平台,并组建了容纳120人的竞赛专用机房,成立了ACM/ICPC竞赛班。2008年起,河南省计算机学会主办一年一次的河南省大学生程序设计竞赛,我们每年都组队参加,在过去的三届竞赛上,共获得4枚金奖、2枚银奖、1枚铜奖。2009年参加亚洲区赛现场赛获得优秀奖。2010年参加第35届亚洲区赛,通过预赛,获得天津赛区、杭州赛区和成都赛区的决赛资格,并在成都赛区获得1枚铜牌,排名第59名,是河南省该项赛事最好成绩,为学校争得了荣誉。在学校内部,我们从2009年开始每年组织两次全校程序设计竞赛,至今已经主办了四次校级竞赛。
4) 转变教学理念。
我们提出了C语言与计算机相关课程的融合教学与实践的教学理念。
5) 采用新的教学方法。
在课堂教学中,我们使用任务驱动、课堂讨论、3W1H教学法、现场编程教学法、课堂陷阱教学法、任务分解教学法、任务贯穿教学法、分散集中教学法、两段教学法、实训优秀作品展示激励法、融合教学法等多种教学法,在课外使用网上在线讨论与答疑、竞赛辅导拨高法、课题组观摩讨论法。我们打破大学考试试卷不评讲的一贯做法,在第二学期的进阶课程第一堂课评讲上学期期末试卷[3]。
(1)3W1H教学法。即:What――解决什么问题,Why――通过实际生活例子引入为什么要解决这个问题,Where――在什么条件下能够解决,How――如何运用学到的方法、技术来解决问题。
(2) 现场编程教学法。在讲授有代码编写的理论课时,当一个理论知识介绍完后,教师出一个难易程度适当且有代表性的题目,让学生随堂写代码,并抽学生到黑板上写,或者抽几份学生作业当场点评。
(3) 课堂陷阱教学法。在期中检查座谈会上,有的老教师说学生很难发现自己程序的错误,而课堂上即使是老师手下的一个笔误,学生也能发现并喊错了。我们正是可以利用学生这种“容许自己范错,不许老师失误”的习惯,对于学生书写代码时容易出错,或者上机碰到的共性问题,我们在课堂上演示时设下陷阱,故意把代码写错,有的学生当时就能发现,而有的学生在编译时才发现有错,我们用自己的错误来吸引学生注意力,加深学生的印象。
(4) 课题组观摩讨论法。我们组织本课题组教师每两周进行一次教学观摩讨论,取长补短,相互学习,推广好的教学方法。
(5) 实训优秀作品展示激励法。我们在第一学期基础课程的第一堂课上展示往届的优秀实训作品,让学生觉得既好奇又深奥,极大地激励了学生的兴趣。临到毕业,大部分学生还能对这堂课记忆犹新。
2与计算机相关课程的融合教学
通过近5年的实践与总结,我们认为如果把C语言程序设计与计算机相关课程进行融合教学,必将促进学生对该门课程的理解,同时凝聚专业特色,促进其他课程的学习,对于学生的自学与综合能力的培养都有积极的作用。
1) 与数据结构融合。
在讲到C语言中的基本数据类型与构造类型时,围绕数据结构的一条主线――四种结构两种存储,联系数据结构中的数据类型,在抽象数据类型ADT中只定义了基本操作,复杂的操作是通过基本操作实现的。在抽象数据类型中定义的操作与C语言中的各种类型的运算,比如取余运算符“%”,在C语言中仅限整数。在讲到查找与排序时,对照数据结构中的查找与排序,介绍一些经典和效率高的算法。在讲到递归函数调用时,用数据结构中的递归调用时栈的进栈出栈变化过程讲解。在讲到scanf函数和其他读取字符函数时,将内存与键盘输入缓冲区结合,使学生更容易理解数据的输入格式。
2) 与操作系统融合。
在讲到变量的数据类型及变量的存储类型时,结合操作系统的内存结构,讲解内存区域分为6个不同的部分来存储不同的数据,使学生了解内存组织的有序性。特殊地,寄存器变量不占内存,而字符串常量存放在符号常量区,通过讲解内存结构,学生就明白静态变量为什么第一次使用时会初始化,以后再使用时用的是上一次的值。在讲解数组的连续存储、链表的动态存储时,结合内存就会理解得更透彻些,甚至可补充内存中堆与栈使用的知识[4]。
3) 与计算机组成原理融合。
入学时,教师介绍计算机发展,一般都会讲到冯•诺依曼原理,那么为什么要学习语言呢?还得从计算机组成原理来讲,从电脑城装配电脑介绍起,首先运用BIOS程序,然后再启动操作系统,最后再运行用户的应用程序。而BIOS程序、操作系统和应用软件都是用语言开发出来的软件,之前都曾经有过C语言版本,BIOS现在还是C语言编写的,而操作系统的一些内核也还有C语言的许多代码。因为大一第一学期的计算机科学导论与本课程是同步开设,学生对计算机的了解还是有限的。同样地,在讲到C语言的三种进制数、位运算、指针时,与计算机的字长、补码运算、指令加以对照,就容易理解些。
4) 与面向对象语言融合。
掌握好一门语言,可以自学其他语言。做到这点不容易,因为大学专业课的特点是学一门结一门,没有哪所大学或哪个专业开设了所有语言,所以在语言课之间融合对照学习,会收到非常好的效果。比如讲到结构体时,与面向对象中的类对照,将结构体变量与对象对照,就比较好理解数据类型和类不占内存,对象与变量占内存了。讲到函数时,与方法对照,讲到函数参数时,补充面向对象中引用的使用,对将来学习面向对象语言和数据结构非常有益。
5) 与数据库原理融合。
程序所需数据从哪儿来?运行结果保存到哪儿去?在讲到文件操作时,将C语言中用到的文件与数据库中数据文件作比较,再联系结构体成员与数据库中的字段、记录,使学生对程序的理解更完整一些。
6) 与编译原理融合。
在演示程序开发过程、多文件的操作、编译预处理时,均可以联系编译原理中编译器的词法/语法分析,教师可以演示单步编译,鼓励学生思考编译的过程。
7) 与高等数学、线性代数、概率论、离散数学、数值分析、运筹学等融合。
如果能将学习C语言与离散数学中的集合论、代数系统、图论结合,再解决高等数学、线性代数、概率统计、几何、数值分析和运筹学中的数学问题,能够极大提高学生的兴趣,也巩固了所学的知识。
8) 与网络融合。
使用C语言可以开发C/S结构的客户端与服务器端程序,在实训和实习时可以分层次进行一些高级的练习,比如C/S结构的网络编程。再提出一些问题,比如如何实现抓图和打印等,培养学生的自学习惯。
9) 与软件工程融合。
结合专业特点,讲解软件开发不仅仅是写代码,还是一个模型的开发过程,对于学生将来毕业做好毕业设计与写好毕业论文有指导意义。特别是软件工程和软件测试专业更是需要了解。
其实,我们在讲授C语言程序设计时,几乎可以和所有计算机专业课程联系起来,比如选修课算法分析与设计,还可以和ACM/ICPC结合,通过ACM/ICPC竞赛的题目寻找合适的教学切入点,有时也可以引入离散数学中的逻辑推理知识,或者构造一种教学情境,让大家感兴趣,能被吸引住,使学生一步步跟着往前走,比如抽几名学生排队讲排序算法。
也可以和非计算机专业课程联系起来,比如计算机英语。同样地,在教学过程中,融合一些新的技术,比如物联网、CPS计划等,学生会更感兴趣。如何融合比较教学,既能深入浅出地完成教学任务又不拖延学时,需要把握好这个度。
3与计算机其他课程的融合实践环节
除了做到融合教学外,在实践环节上如何融合也至关重要。
1) 搭建ACM/ICPC校内在线测评平台。
我们采取竞赛辅导拔高法,成立竞赛班,采取“讲-帮-带”的方式,建立了郑州轻工业学院在线测评平台,如图1所示。丰富了题库,组织校内选拔赛,教师带队参加竞赛。
自2009年开始,我们每年举办两次全校性质的大学生程序设计竞赛:12月举办新生程序设计竞赛(个人赛)、5月举办一次全校程序设计竞赛(组队赛)。均有IT公司赞助,并有开幕式和颁奖仪式,极大地提高了学生的编程热情。
参加ACM/ICPC竞赛,有助于培养学生的抽象思维、逻辑思维、心理素质、团队合作和协同能力[5]。
2) 与考研结合。
我们从大一第一学期就让学生思考自己将来的出路:工作或考研。如果工作就必须学好知识,重视实践,提高动手能力。
3) 与操作系统、C++融合实训。
在后续的操作系统和C++的实训时,安排我们C语言程序设计课题组的教师参与实训,使得C语言程序设计课程的学习更加长期有效。
4) 把等级考试当做门槛。
我们把全国和河南省历年计算机等级考试的题目穿插到平时的教学中,让学生把握每个知识点。
5) 介绍学生参加教师的项目。
我们在授课的同时,也有心培养一些勤于思考用心的学生,介绍他们参与到教师的应急系统、嵌入式、GIS、网络等实际项目开发中,引导学生自学C++和Java、JSP等工具,让他们从实践中得到锻炼,积累经验。
6) 跨学科实训并总结。
在第二学期期末的实训环节,我们让学生分组去做一些稍微大一点的题目。比如C语言语法分析模拟器、BIOS模拟器、科学型计算器、TC模拟器、Windows小游戏、信息系统等。在实训结束后,我们安排优秀实训作品展示总结会,也是对一学年课程学习的总结。有很多外专业的学生自愿来参加。通过展示交流,学生看到了别人的成绩,也看到了自己的差距。
4结语
通过对C语言程序设计存在问题进行思考和分析,我们结合学校实际,提出了C语言程序设计与计算机相关课程的融合教学与实践。经过4年的教学与实践检验,取得了较好的教学效果,对C语言程序设计,以及其他程序设计语言的教学都有一定的指导意义。
参考文献:
[1] 李玉梅.“C语言程序设计”课程的“教、学、做”一体化的探索与实践[J]. 科技创新导报,2010(28):164.
[2] 朱立华,俞琼. C语言教材建设的研究与实践[J]. 计算机教育,2009(13):150-153.
[3] 徐小青,李晓东.“高级语言程序设计”课程教学改革与实践[J]. 计算机教育,2009(13):46-48.
[4] 王祥瑞. C语言中的内存泄漏分析[J]. 长春大学学报,2009(6):27-29.
[5] 武建华. 基于ACM模式的数据结构实践教学改革与探索[J]. 计算机教育,2009(13):114-116.
Integrated Teaching and Practice of C Language Program Design and Other Subjects of Computer
YAN Hongyan1, JIN Baohua1, ZHANG Xiaojuan2, XU Hongxia3
(1. School of Computer and Communication Engineering, Zhengzhou University of Light Industry, Zhengzhou 450002, China; 2. Department of Foreign Language, Zhengzhou Tourism College, Zhengzhou 450009, China; 3. Art Design Department, Jiyuan Vocational and Technical College, Jiyuan 454650, China)
篇6
关键词:计算机公共课;VBA教学平台;教学改革
中图分类号:G434 文献标识码:B 论文编号:1674-2117(2017)06-0084-03
研究背景
计算机程序设计语言一直是学生反映比较难的一门课程。长期以来,很多高校使用VB语言作为“高级语言程序设计”课程的教学内容,笔者所在学校原来也是如此。在VB语言的教学过程中,笔者发现了一些问题,突出表现为以下两点:①学生反映学习编程比较难,而且历年考试成绩也不理想;②学生觉得学习这门课程用处不大。这就导致很多学生对这门课程没兴趣,上课纯粹为了应付考试,甚至产生厌学情绪。[1]笔者仔细分析了上述问题,认为问题产生的原因主要有以下三个:①学生基础较差,且逻辑思维能力不强。②VB语言要结合数据库编程,才能展现它的强大功能。而大多数学校只开一学期课程,学时太短,学生仅能机械地学习语法,没有时间学习实际应用部分的内容,从而觉得VB语言没有用。③学语法时,教师没有给学生呈现对其专业学习有帮助的例子,所以他们没有一个直观的感受。
笔者经过详细的论证,决定采用Excel VBA替代VB教学。VBA有着其他语言或开发工具所不具备的独特优点:①VBA可以通过操作Excel操作数据库,这样就可以开发出很多实用的程序,使学生对编程有了直观的体验,提高了他们的学习兴趣。[2]②VBA是易学、上手较快的编程语言,且属于VB语言的子集。即使是非计算机专业人员,也可以用它编写出需要的件,极大地降低了学生学习的难度。③可以高效、快速地编制出Windows环境下功能强大、图形界面丰富的应用软件系统。用Excel VBA替代VB的教学改革在笔者所在学院已经进行了两年,并取得了较好的教学效果。学生学习兴趣明显加强,对编程的应用能力也得到了较大的提高。
目前仍存在的问题
“高级语言程序设计”课程改革虽然已经取得了一定的成效,但还存在以下几个问题。
1.缺乏完善的题库
由于笔者用Excel VBA替代了VB进行教学,学生在上机练习的过程中,有很多题目不再是传统的编程题。例如,在教学过程中,笔者把Excel作为数据库使用,让学生通过编程操作Excel,使他们能轻松理解数据库的基本概念和知识。但由于没有建立统一的题库,每位教师上课时例题都有所不相同,对知识点的要求也有细微的差别,所以给期末考试命题带来了困难,未能实现教学标准化。
2.困难解答不及时,教学实时化不够
“高级语言程序设计”课程是一门对实践要求较高的课程。学生上机编程时,一个语法错误或隐含的逻辑错误都将导致程序运行失败,甚至系统崩溃。这时,如果遇到的问题不能及时得到解决,学生则容易产生厌学情绪。但在课堂中,教师要同时面对几十个学生,要想及时解答每个学生的问题是不可能的,教学实时化不够。
3.教学考核、评价体系不完善
考试的目的不仅是为了检查学生的学习成绩,还要及时发现他们哪些知识点掌握不足,并针对特定问题进行指导。目前,笔者所在学校的改革使学生对“高级语言程序设计”这门课程的整体学习成效有了较大提高,但学校的教学考核、评价体系不够完善,教师对单个学生的学习状况掌握还不够精细。
“学、练、考”一体的VBA教学平台构思
针对以上问题,笔者提出开发一个集“学、练、考”于一体的VBA教学平台来实现教学的标准化、实时化、精细化,其具体步骤如下。
(1)开发一个统一的题库来实现教学的标准化。按照教学大纲的要求,笔者把每一章的知识点按选择题、判断题、程序填空题、编程题四类题型编制成试题库。这样,不论哪位教师上课,学生掌握的知识点都是固定的,保障了教学质量的稳定。
(2)单元测验后,软件会自动统计出每题的出错率,教师很容易就可以知道学生哪些知识点掌握得不够好,以便下节课进行重点讲授,从而实现教学的实时化。
(3)系统对每位学生的每次登录练习都有记录(包括自测成绩、错题编号等),这样教师可以很容易掌握每位学生的学习情况,并针对学习落后的学生进行定点辅导,以达到教学精细化的目的。
开发方案概述
1.关于自动阅卷问题
笔者采用Excel VBA进行教学,由于Excel自带了VBA开发环境,所以生成的题目只需要一个Excel文件即可保存。在该文件中,工作表一保存判断题,工作表二保存选择题,工作表三保存程序填空题,工作表四保存编程题。对于客观题(前三种题型),程序只需要按题号与题库答案进行对比就可以阅卷。对于编程题的自动阅卷,笔者这样设计:在题库中,每道编程题的结果都要求保存在题目文件的工作表四中;阅卷时,程序自动打开每位学生的试卷文件(一个Excel文件),采用Excel VBA的过程调用(call)命令执行过程(学生抽到的题目号),再把结果(保存在工作表四中的数据)跟题库中的结果进行比较,最后得出成绩。对于有语法错误不能运行的程序,系统将杀死进程,再对学生的源代码进行关键字对比,给出步骤分。[3]
2.系统结构
考虑到出题效率,笔者采用了C/S系统结构,开发工具使用Visual Studio 2010,数据库使用SQL Server2008,系统结构如下图所示。
教师登录系统后,可以出卷,安排任课班级的考试,查阅任课班级学生的考试成绩,以及查阅学生的练习情况。学生登录后,可以进行单元练习,自我测试,查看题目答案以及知识点描述等。
3.数据库设计
数据库主要由学生信息表(如下页表1)、试卷信息表(如下页表2)和学生成绩表(如表3)三个表组成。
结束语
构建“学、练、考”一体的VBA教学平台,能有效解决“高级语言程序设计”课程教学中存在的问题,加强教师和学生的信息交流,方便教师及时掌握学生的学习动态,较好地实现了教学的标准化、实时化、精细化,该平台还可以作为一种通用教学平台应用到其他课程的教学中,具有普遍的应用价值。
参考文献:
[1]孙淑霞.地方高校大学计算机基础课程改革的探索与实践[J].中国大学教学,2014(4).
[2]杨循杰.高校非计算机专业数据库教学改革[J].中国成人教育,2008(5).
篇7
【关键词】计算机;公共课;实践教学
随着计算机技术的飞速发展及其应用领域的不断拓展,人们在工作和生活中已经离不开计算机这一自动化和具备多媒体功能的辅助工具了。因此为了使学生掌握计算机与信息处理的基础知识和操作技能,能够有更好的就业前景,近十几年来计算机基础已经成为在校大学生必修公共基础课程。
我们学院计算机公共课包括两门课程:
1. 计算机文化基础 36学时 18学时理论/18学时上机
2. C语言程序设计 72学时 42学时理论/30学时上机
依据学生的认知规律及基础水平,科学的设置实践课程,适当调整理论课时和实践课时的比例,使二者能够有机结合,提高计算机公共课的教学效果,为后继学习奠定坚实的基础。在实践性教学过程中,将基础实践教学项目、提高型实践项目、创新型实践项目合理配套,建立科学化、层次化的实践性教学体系。
具体课程及实践性教学分布如下。
在计算机公共课实践教学改革中,我们努力做到以下几点:
1 以学生为中心的教学理念
长春建筑学院计算机教研室经过近两年的教学实践,实现了从教师教为中心到学生学为中心的观念转变,教师在教学过程中注重因材施教,充分考虑目前我国民办高等教育的生源水平。从增强学生学习兴趣上下功夫,重视学生的主动性,
增强课程的趣味性,由浅入深推进教学、构建课程内容。
2 采取“五个结合”的教学方法
在课程建设过程中,重视教学方法和教学手段的现代化,采取“五个结合”的教学方法,即:理论与实际相结合,讲解与多媒体演示相结合,教师课堂讲授与学生讨论相结合,教室课堂与网上课堂相结合,面对面答疑和网上答疑相结合。在授课过程中,教师根据讲授内容的重点、难点布置与实际问题有关的思考题目,安排时间组织学生进行讨论;将电子教案、多媒体演示系统和项目案例都放在校园网上,供学生复习和自学;除在规定时间和地点答疑外,利用网络答疑随时在线答疑构成了集多媒体、网络环境和教师讲授于一体的立体化教学模式。
3 注重实践能力和创新能力的培养
学院从2007年开始将C程序的开发环境由turbo c 2.0改为VC++6.0,将上机操作课由24学时增加到30学时,加大了实验教学,解决了教学内容和实验内容脱节的问题,在教学实施过程中形成了“理论实践一体化” 的“教、学、做”一体的教学模式。上机操作课中以实例进行引导,用任务进行驱动,强调学为所用和学以致用,强调算法的多样化,鼓励学生多思考,培养学生的编程能力,提高学生解决实际问题的能力。
4 教材特色明显、效果显著
篇8
考试时间
云南普洱2020年4月自学考试时间安排在4月11日星期六、4月12日星期日(上午9:00-11:30;下午14:30-17:00)举行。
考试须知
(一)考场设置:由各州(市)招生考试机构确定。需在县城以外设考场的,须报省招考院批准。“广告”专科只在昆 明设考点。
(二)考生应试时,须带准考证、考试通知单和居民身份证(或其它能证明身份的有效证件),三证不全者不得进入考场。考生必须严格遵守考场规则,不得以任何形式作弊。凡违纪违法者,按2011年教育部第33号令和《刑九修正案》严肃查处。
(三)考试成绩以百分计,六十分及格,不及格者可参加该门课程的下一次考试。考试成绩公布在“云南省招考频道(ynzs.cn)”网站上,考生自行登录查询。考生对成绩有质疑的可在成绩公布之日起10个工作日内到各州(市)招生考试机构办理查分申请,由各州(市)招生考试机构汇总后统一到省招考院查分,查完后通知考生。省招考院不直接对考生查分。
(四)考试时,对需要使用计算器的科目,考生可携带没有存储功能的计算器,并且不得互相借用。不准使用有存储、接收、发射功能的电子工具。考生进入考场考试严禁携带任何通讯工具,否则将视同作弊。
(五)同一考试时间段,一名考生只能参加一门课程的考试。
(六)全国计算机等级考试(NCRE)成绩在自考系统中的使用:
根据全国考委办函[2004]148号文件规定:
1.NCRE课程暂与高等教育自学考试的部分专科课程进行衔接。
2.凡获得NCRE一级合格证书者,可以免考高等教育自学考试中的《计算机应用基础》(课程代码:00018)或《计算机应用技术》(课程代码:02316)课程(包括理论考试和上机考试两部分)。
3.凡获得NCRE二级C语言程序设计(笔试和上机)合格证书者,可以免考高等教育自学考试中的《高级语言程序设计(一)》(课程代码:00342)课程(包括理论考试和实践考核两部分)。
4.凡获得NCRE三级PC技术(笔试和上机)合格证书者,可以免考高等教育自学考试中的《微型计算机及其接*术》(课程代码:02319)和《微型计算机原理及应用》(课程代码:02277)课程(包括理论考试和实践考核两部分)。
(七)全国公共英语等级考试成绩在自考系统中的使用:
高等教育自学考试的考生参加PETS二级或PETS三级考试,笔试合格者的成绩可直接替代自考有关专业大专或本科公共英语〈即英语(一)(课程代码:00012)、英语(二)(课程代码:00015)〉的考试成绩,并可获得相应的学分(PETS二级替代专科英语(一)成绩,PETS三级替代本科英语(二)成绩,英语专业不能替代)。考生是否参加相应口试,则根据考生是否要求获得PETS等级证书或高等教育自学考试的相关专业来定。
(八)汉语言文学本科专业的毕业论文答辩定于每年的5月和11月,分两次举行,考生可与云南师范大学文学院联系进行答辩事宜。英语本科的“口译与听力”,专科的“听力”、“口语”考试时间由云南师范大学外语学院安排,请考生与学校联系。
(九)已取得自考专业全部课程合格证书的考生,如该专业有实践、实习、设计、毕业论文等考核要求的,应及时和主考院校联系实习考核事宜,待取得合格成绩后,方可办理毕业证书。
篇9
考试时间
云南昭通2020年4月自学考试时间安排在4月11日星期六、4月12日星期日(上午9:00-11:30;下午14:30-17:00)举行。
考试须知
(一)考场设置:由各州(市)招生考试机构确定。需在县城以外设考场的,须报省招考院批准。“广告”专科只在昆 明设考点。
(二)考生应试时,须带准考证、考试通知单和居民身份证(或其它能证明身份的有效证件),三证不全者不得进入考场。考生必须严格遵守考场规则,不得以任何形式作弊。凡违纪违法者,按2011年教育部第33号令和《刑九修正案》严肃查处。
(三)考试成绩以百分计,六十分及格,不及格者可参加该门课程的下一次考试。考试成绩公布在“云南省招考频道(ynzs.cn)”网站上,考生自行登录查询。考生对成绩有质疑的可在成绩公布之日起10个工作日内到各州(市)招生考试机构办理查分申请,由各州(市)招生考试机构汇总后统一到省招考院查分,查完后通知考生。省招考院不直接对考生查分。
(四)考试时,对需要使用计算器的科目,考生可携带没有存储功能的计算器,并且不得互相借用。不准使用有存储、接收、发射功能的电子工具。考生进入考场考试严禁携带任何通讯工具,否则将视同作弊。
(五)同一考试时间段,一名考生只能参加一门课程的考试。
(六)全国计算机等级考试(NCRE)成绩在自考系统中的使用:
根据全国考委办函[2004]148号文件规定:
1.NCRE课程暂与高等教育自学考试的部分专科课程进行衔接。
2.凡获得NCRE一级合格证书者,可以免考高等教育自学考试中的《计算机应用基础》(课程代码:00018)或《计算机应用技术》(课程代码:02316)课程(包括理论考试和上机考试两部分)。
3.凡获得NCRE二级C语言程序设计(笔试和上机)合格证书者,可以免考高等教育自学考试中的《高级语言程序设计(一)》(课程代码:00342)课程(包括理论考试和实践考核两部分)。
4.凡获得NCRE三级PC技术(笔试和上机)合格证书者,可以免考高等教育自学考试中的《微型计算机及其接*术》(课程代码:02319)和《微型计算机原理及应用》(课程代码:02277)课程(包括理论考试和实践考核两部分)。
(七)全国公共英语等级考试成绩在自考系统中的使用:
高等教育自学考试的考生参加PETS二级或PETS三级考试,笔试合格者的成绩可直接替代自考有关专业大专或本科公共英语〈即英语(一)(课程代码:00012)、英语(二)(课程代码:00015)〉的考试成绩,并可获得相应的学分(PETS二级替代专科英语(一)成绩,PETS三级替代本科英语(二)成绩,英语专业不能替代)。考生是否参加相应口试,则根据考生是否要求获得PETS等级证书或高等教育自学考试的相关专业来定。
(八)汉语言文学本科专业的毕业论文答辩定于每年的5月和11月,分两次举行,考生可与云南师范大学文学院联系进行答辩事宜。英语本科的“口译与听力”,专科的“听力”、“口语”考试时间由云南师范大学外语学院安排,请考生与学校联系。
(九)已取得自考专业全部课程合格证书的考生,如该专业有实践、实习、设计、毕业论文等考核要求的,应及时和主考院校联系实习考核事宜,待取得合格成绩后,方可办理毕业证书。
篇10
关键词:汇编语言;双语教学;改革措施
中图分类号:G642 文献标识码:A
“汇编语言”是继“高级语言程序设计”之后的又一门计算机语言程序设计课程,但讲解的是面向处理器的低级语言,汇编语言程序用英语编程,汇编语言操作的主流CPU技术文档以及最新发展技术文档都是英文资料,因此在该课程的教学中引入英语教学模式很有必要。同时,专业课采取双语教学为学生营造一个含有英语因素的学习环境,能够训练学生用外语思考、表达和交流的能力。
1双语教学的实施过程与策略
1.1双语教材的选用
双语教材是进行双语教学的物质前提,是双语教学的重要保障。国外优秀原版教材应该作为双语教材的首选,因为它们往往具备居于学科研究的前沿、实例丰富、语言地道、内容详实、可读性和实用性强等众多优点。通过原版教材,可以充实国内相关课程的内容,拓展学生视野,从而更好地训练学生的听、说、读、写等各方面的综合运用外语能力。
我们经过广泛调查和精心比较,选择了由Richard C. Detmer编写,机械工业出版社出版的《80x86 Assembly Language and Computer Architecture》作为教科书,本书内容反映了Intel CPU较新的发展,且句式简单,容易理解,适合学生阅读。除此之外,我们还提供了扩充性双语资料,如由Kip R. Irvine编写的《Intel汇编语言程序设计(第四版)》。根据我校“汇编语言”教学大纲和特点,探索符合我校的双语教学的体系与教学内容,开发辅助教材讲义,使学生的专业知识与外文水平同步提高,较好地解决了英语教学从基础向专业的过渡问题。
1.2循序渐进,开展双语教学
双语教学应注重师生之间的交流与互动,倡导以学生为本进行教与学。要积极开展各种互动教学活动,对学生积极引导,使他们增加对双语教学的了解,充分发挥学生的主观能动性,从而达到以英语为交流工具保证学习效果的目的。虽然在校大学生的英语已较以前有很大提高,但目前学生听说能力不高、外语水平参差不齐的情况增加了双语授课难度,妨碍了双语授课目标的实现。因此我们把整个教学过程分成四个阶段,由浅入深,循序渐进。
第一阶段:入门阶段,针对汇编语言双语教学的第一部分――预备知识。因为学生以前所学的是基础英语和公共英语,与计算机英语从词汇和句型上都有一定的差异,学生普遍感到不适应。在这个阶段我们根据第一部分内容把课程中常用的汇编语言词汇和简单句型整理出来(如图1所示),教学的重点放在让学生熟悉和适应英文原版教材的表述和英文科技论文的表达方法上,教学速度可以适当放慢,使学生习惯双语教学的模式。
第二阶段:阅读英文阶段,针对汇编语言基础知识的第二部分――计算机组成及寻址方式。在学生普遍熟悉了专业词汇和句法后,教学的重点放在教材的阅读和知识的理解上,训练学生快速阅读专业文献的能力。例如,在讲解寻址方式一节时,我在课堂上为学生指定教材中的相关段落,让学生在10分钟内阅读,然后我再提出问题,让学生回答,通过这种方式总结出相关的知识点,训练英语阅读能力。
第三阶段:英文思维阶段,针对本课程的第三部分――汇编语言基础程序设计。教学的重点放在专业知识的讲解和学习上。要求学生直接从英语原版教材中获取知识,避免“英文中文”思维的学习方式,也就是按照英文进行思维,PPT中完全用英语表示(如图2所示)。这一阶段可以逐步加快教学进度,学生会感到逐渐适应了英文的学习环境,学习内容充实有趣。
第四阶段:综合提高阶段,针对汇编语言综合内容。有了前面的基础和训练后,教学的重点就可以放在用英文进行思维和表达上。教师通过英文作业、设计和专题论文来训练学生把所学知识连贯起来,引导他们用英文思考专业问题,表达思想。在学习子程序以后,我们给学生布置作业:“Compare two strings that input from keyboard and output the result.”要求学生用英语完成该软件文档,并编写程序。完成这种作业有利于提高学生英语应用能力。
1.3采用多种教学策略,组织课堂教学
教师的教与学生的学应该相辅相成,不可分割,只有把两者很好地结合起来,实现教学互动,才能提高课堂教学质量。为了调动学生的学习积极性,激发他们的学习潜能,更好地完成教学任务,我们根据教学内容和学生水平采用了不同教学策略。
1.3.1多媒体与传统板书有机结合
多媒体教学方式能够创造出一个声情并茂、生动逼真的教学环境,为课堂教学的实施提供令人耳目一新的形象媒介,并且可以承载和传达丰富的教学内容。我们利用多媒体教室,采用英语电子教案、配合多媒体演示展开课堂教学;帮助学生熟悉理解重要的知识点。主讲教师从英文教材中总结重要的知识点,以英语表述在演示文稿上,并对关键词汇标注中文注释;PPT中的内容尽可能简洁扼要,一目了然;英文句子尽量采用教材的原文,或改用简单句式表示。对于有些知识点则制作动画演示,增强学生的感性认识。例如:我们利用动画演示堆栈的操作,边演示边用简单的英语加以解释,得到较好的效果。此外,我们可以借助传统黑板板书这一媒介,把那些不能够完整呈现的,需要经过逐步动态、演绎推理才能逐步完善形成整体的教学内容,通过黑板板书的形式,以扼要的文字或简明的图画,生动地反映其动态、演绎推理的过程。
1.3.2以实际问题为背景进行案例教学和问题教学
“汇编语言程序设计”是一门理论与实践紧密结合的课程,在常规的教学过程中,除讲授基本的理论外,教师尤其注重实例的分析。要增加学生的学习兴趣,就必须把所讲内容和现代科技的最新发展、实际应用相结合,理论联系实际,只有这样学生才能知道现在学的知识对以后走向社会、从事科技工作是很有用处的。案例教学和问题教学是目前流行的教学方法,它将书本知识与实际问题紧密联系起来,学以致用,大大提高学生的学习积极性,培养学生探究学习的能力。例如:以前在学习代码转换指令XLAT的时候,学生经常会对该指令的用途仅局限于书上的例题。现在我们举一个具体实例,如关于数码管在生活中的应用,像计价器、电子秤等都是数码管显示,学生觉得这个问题很直观,很有趣。经过讨论和教师的解释,学生最后理解了代码转换指令在数码管显示中的应用,对该指令的功能也更加理解。再比如在汇编语言程序设计中经常会涉及各种码制的转换,“怎样从键盘输入十进制数?”“怎样显示十六进制数?”这样的问题是学生在编程时经常用到的,他们有很大的兴趣去解决这些问题,从而可以帮助学生更好地掌握逻辑指令、分支和循环结构设计、子程序设计等知识点。
2加强实验的设计,培养学生编程解决问题的能力
实验是工科专业重要的实践性教学环节。汇编语言是实践性很强的一门课程,必须经过不断的编程训练和上机调试程序,才能够熟练掌握其内容。在教学中我们按照“精讲多练”的原则,加大了上机实践时间。通过实际练习加深学生对该课程的掌握,培养其思维能力和动手能力,在上机实践时能编写出结构清楚、正确易读、符合规范的程序,所以在实践环节中严格按流程(如图3)来做:
另外,在网上开辟专栏,学生可以就实验内容和实验中没有及时解决的问题与教师进行讨论,方便学生的学习,提高了学生的学习兴趣,同时也提高了教师的工作效率。
3综合考评方法
对于学生来说,双语教学要比单语教学难得多,如何合理有效地考核学生掌握知识的程度,这是双语教学中的一个关键问题。在理论课教学实践中,我们加大了平时成绩的比重,将课后作业、出勤作为平时成绩,和期末考试成绩按一定系数加权平均,综合评定学生的学习成绩。实验课考评单独进行。理论课考评如下:
① 作业:给学生布置一定量的课后习题,必须以英文的形式完成,旨在督促学生认真阅读、理解教学材料,学会使用一些简单句型来表达专业问题。作业情况占总成绩的20%。
② 出勤:占总成绩的 20%。
③ 期末考试:期末考试采用闭卷形式,全英文命题,可用英文或中文答题,占总成绩的 60%。
实验考评:共6个实验,每次实验完成后需交实验报告,并尽可能用英文完成,训练其专业知识的英文书面表达能力,根据实验报告的完成情况给出相应的分数,共占总成绩的50%,最后的实验考试占50%。
4结束语
在该门课实施双语教学的过程中,我们积累了一点经验,也遇到了一些困难。例如学生的英语水平参差不齐,所以应采用循序渐进的教学方法,英语的使用由浅入深,由少到多。开始教学中的英文所占比例相对较小,再过几周逐渐加大英文所占比例,过渡到课件、课堂教学和提问、平时作业等均采用英文。今后关于双语教学工作的探索将在英文教材以及学生对教学方式兴趣的培养方面加大力度,努力提高学生英语水平,加强学生间和师生间的交流,使得双语教学在师生共同努力之后能够获得最大的收获。
参考文献:
[1] 张自力,王柯,等.探索双语教学之路,建设计算机网络精品课程[J]. 计算机教育,2008(8).
[2] 秦国新,杜方,李亚灵.高校发展双语教学之浅见[J].山西农业大学学报:社会科学版,2005(2).
[3] 姚红燕,陶皖.《数据结构》双语教学的探讨[J]. 计算机教育,2007(8).
[4] 刘欣欣.“编译原理”双语教学的实践与探讨[J]. 长春师范学院学报,2005(3).
The Implementation and Explore about Bilingual Teaching in Assembly Language
HOU Hong-xia
(Computer and Information Engineering College, Inner Mongolia Normal University, Huhhot 010022, China)