APP下载

程序设计课程实验教学的改革研究

2014-04-09张引兵宋万干

关键词:上机程序设计程序

张引兵,宋万干

(1.淮北师范大学 数学科学学院,安徽 淮北 235000;2.淮北师范大学 计算机科学与技术学院,安徽 淮北 235000)

程序设计课程是计算机及其相关专业的核心课程,同时也是一门实践性很强的课程.课程的教学目标是通过对课程的学习,使学生学会利用计算机处理问题的思维方法,增强解决问题的编程实践能力,为将来从事软件开发和解决工程问题、科学技术问题奠定基础.实验教学是实现该目标的重要教学环节,是培养学生钻研与创新精神的课堂教学,是理论知识转换为实际应用的重要途径[1].程序设计的实验教学为学生提供了一个既动手又动脑,独立实践的机会,能够使学生将课本上的理论知识和实际应用有机地结合起来,锻炼学生分析、解决较复杂问题的能力,提高学生独立编写较大程序的能力.在程序设计课程的实验教学中,如何才能使得在有限的教学时间内掌握更多的基本知识与技能,使实验变得高效起来成为程序设计实验教学所面临的最大挑战.

1 程序设计课程实验教学的现状

1.1 上机实践学时不足

程序设计课程的教学重理论、轻实践现象普遍存在.有些学校程序设计课程的实验大纲上安排的上机实践学时还不足20学时,有的甚至更少.没有学时的保障,程序设计实验的效果就可想而知了.

1.2 实验内容的选取趣味性和实用性缺乏,学生积极性不高

程序设计课程的多数上机实验内容是教材或实验指导书上现成的步骤或程序代码,实验内容的趣味性和实用性缺乏,学生所做的只是对相关程序的验证,谈不上程序的设计,无法调动学生学习的积极性和主动性.

1.3 实践教学环节重视不够

程序设计课程具有很强的实践性,学生如果只是靠课堂上的听课而不具体的上机实践,根本无法达到课程的实际教学目标.然而许多高校的老师和学生,在程序设计的教学中,往往只注重理论课的教学,而对上机实践却不够重视.譬如,有的老师视上机课为放松课,人虽然在机房,却没有尽职尽责地辅导学生,而是在做自己其他的事情;学生视上机课为玩耍课,想去就去,不想去就不去,或者去也在玩游戏、上网聊天,做一些与上机实验无关的事情[2].导致的后果就是,培养出来的学生熟悉相应的程序设计语言知识,能够应付书面考试.但是,一旦遇到实际问题,却不知如何下手.

1.4 考核方式不够科学

目前多数程序设计课程的考核仍采用笔试形式,机试部分所占比例不够或者根本不进行上机考试.

2 程序设计课程实验教学的改革探讨

2.1 积极做好入门引导

在教学过程中,应该注意程序设计课程的学习有一个入门的过程.在刚开始的实践教学中,学生往往会遇到各种各样的问题,此时,教师应加强对实践的辅导,及时解决学生实验中的各种困难,以克服学生的畏难心里.

对于程序设计刚入门的同学来说,程序编译或链接时给出的错误提示信息往往不能准确理解,针对这种情况,我们编写了vc++6.0 常见错误对照提示表,并在应用中不断完善.例如:“error C2018:un⁃known character’0xa3’”;含义:不认识的字符’0xa3’;错误原因:一般是中文状态下的字母或标点符号.“error LNK2005:_main already defined in Cpp1.obj”;含义:(链接错误)main函数已经在Cpp1.obj文件中定义;错误原因:未关闭上一程序的工作空间,导致出现多个main函数.这种做法极大地方便初学的同学在编译或链接出现错误时对错误原因的分析和对程序错误的修改.在应用中,这一举措得到了同学的高度认可.

2.2 培养实验前预习的良好习惯

“凡事预则立,不预则废”,在程序设计实践教学中也是如此.程序设计课程的实验教学,仅靠教学计划内的实践学时是远远不够的.在以往的上机指导过程中,经常会遇到一些同学,课下没有好好准备,上实验课时不知道从何下手;甚至有的同学不是按照实验要求的任务去做,只是将教材上现有的程序输入进去,而对于程序本身的逻辑关系、功能等根本不明白,收不到上机实验应有的效果.

老师可以在实验前将实验任务布置给学生,让学生提前将实验相关内容、程序代码等准备好,并进行初步的结果分析,做到有的放矢.这样学生在做实验时才会在有限的时间内,更有效地完成实验所要求的内容.同时,能增强学生学习的自信心,提高学生对学习程序设计的兴趣,上机实验的效果自然也就得到了改善.

2.3 精心设计,合理安排上机实验的任务

在进行程序设计实践任务的总体设计时,将验证性实验和设计性实验相结合,将实践的内容分成多个层次,紧密结合课堂教学的内容,帮助学生在加深理论教学内容理解的同时,培养分析问题及运用所学知识解决实际问题的能力.

(1)激发学生学习的兴趣,调动学生学习的积极性.程序设计理论课知识点比较多,一些语法规则也比较琐碎,常常让人感到枯燥乏味,而在实践环节的选题上,往往又过于偏重于语法规则的练习,内容相对陈旧,实用性不强,趣味性缺乏,从而影响了学习的积极性和主动性[3].针对这种情况,这就要求我们在进行实践教学的过程中,应通过各种方式向学生展示所学知识的意义和应用,使学生能够意识到所学的知识是有用的,是能够解决相关问题的,是与自身的继续学习和发展密切相关的.另外,在进行实践任务的选题时,还应注意实用性与趣味性并重,将一些经典的趣味性的例子纳入到上机实验的题目中去,比如:百钱百鸡、杨辉三角、汉诺塔、猜数游戏、分形图打印等问题,这引起了学生的兴趣,同时也激发了学生的好奇心与求知欲,调动了学生学习的积极性与主动性.

(2)在实际的实验顺序的安排上,采用循序渐进的设计方式.即在覆盖了相关知识点的前提下,首先要求学生能够读懂一些相应程序.其次要求学生能够根据已有的程序,按照相应的要求进行修改程序;然后要求学生能够模仿一些现有的例子进行简单的编写编程程序.最后要求学生能够独立地按照一定要求编写相应的程序,使得学生的每一步都有基础,循序渐进.按照这种方式,既有利于对所学课程知识的巩固,又有助于学生编程实践能力的培养.在实际的程序设计实践教学的教学过程中,这种安排符合认知与学习规律,深受学生好评.

(3)培养学生的探索精神.为了提高学生的自学能力,培养学生的探索精神,在布置实验任务时可以适当增加一些超出教材内容而又很实用的实验内容,比如C 语言中一些常用函数(数学函数、延时函数、发音函数、随机函数等)的使用、图形界面设计方法等.

(4)在进行综合实验任务出题时,也可以鼓励学生根据自己的想法和兴趣,提出符合课程要求的新课题,以进一步提高学生参与的积极性.

2.4 典型问题,集中指导

在每一次的实验过程中,学生总会遇到这样或那样的问题,实验指导老师就要在实验巡视过程中予以耐心指导.由于学生水平的不同,所提问题的层次也不尽相同,针对每一个同学的提问,实验指导教师要注意正确引导和提示,同时保持自己的态度,不要表现出不耐烦或瞧不起,否则会引起学生的挫败感,打消学生的积极性.另一方面,对于实验过程中出现的比较典型的、集中的问题,可以进行集中指导,这样就避免实验指导老师基于同一个问题的多次重复回答与指导,提高效率.

2.5 适时穿插一些综合性案例实践,挖掘学生创新潜能

程序设计课程的各章节之间有一定的关联性,实验指导教师应根据教学内容和进度,通过精心设计和组织,准备一些由浅入深、贴近实际的综合性案例,在适当的时间,供学生进行实践.在学生学习理论知识的过程中,不断地完善相关部分的实验内容,逐步掌握编程的技巧,使得学生能够学以致用.在这种边学边练,边学边用的过程中,学生理解和掌握相关的程序设计语言的概念和语法知识,奠定扎实的基本功,积累案例的开发经验,同时,提高学生对知识的驾驭能力,充分发挥学生的创新潜能.

2.6 认真做好实验总结

在每一次上机实践课结束后,要求学生根据实验的预习情况,以及实验过程中所遇到的问题和解决办法进行总结.通过上机实验,学生对相关知识点都有了较为深刻的体会和认识.然而有很多问题通过上机实践现在已经解决了,但过一段时间可能就忘记解题思路.因此,我们让学生将一些问题的解题思路、程序代码以及实验过程中所遇到的问题和解决方法记录下来,完成实验报告,巩固所学知识,养成良好的习惯,达到事半功倍的学习效果.

2.7 完善考核方式

采用灵活多样的考核方式,即考试采用笔试和实验考核相结合的方式,其中实验考核采用上机考试和平时考核相结合的考核方法,全面考核学生的基础知识、动手能力和平时的学习状况.对于每一次上机实验的实验报告的批阅和课程设计的评阅都有相应的成绩评定,并在教学记录上进行登记,作为进行平时考核的重要依据,同时,也对学生做好规定实验起到约束和激励的双重作用.

3 总结

良好的实践教学对提高学生的实践能力、创新能力及个性发展起着十分重要的作用[4].在程序设计课程的实验教学中,我们积极推进程序设计课程的实验教学改革工作,勇于探索,不断总结,积极改进,实验教学效果得到很大改善.

[1]潘丽丽,钟少宏,姜瑜,等.非计算机专业C语言程序设计实验教学模式[J].计算机教育,2011(18):81-83.

[2]王 巍.高级语言程序设计课程教学方法探析[J].计算机教育,2012(8):44-46.

[3]叶志婵.程序设计实验教学的改进[J].中山大学学报论丛,2005(3):77-79.

[4]刘 丹,刘德山.C语言程序设计课程综合性和设计性实验研究[J].计算机教育,2012(9):75-77.

猜你喜欢

上机程序设计程序
周金应
标准化护理程序对体外膜肺氧合术患者上机各阶段用时的影响
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
试论我国未决羁押程序的立法完善
上机数控“可疑”的高毛利率
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
高职高专院校C语言程序设计教学改革探索
创卫暗访程序有待改进