王玲 王津
[摘 要] 改革中职程序设计教学方法,将按知识结构组织教学的传统教学法改为按任务项目组织教学,实践证明,这对激发学生程序设计课程的学习兴趣,使本来枯燥的程序设计变得生动活泼,寓教于乐,寓教于行,提高程序设计课程教学质量,增强学生动手解决实际问题的能力,意义重大,是行之有效的方法。
[关 键 词] 程学设计;项目教学;激发兴趣;提高质量
[中图分类号] G642 [文献标志码] A [文章编号] 2096-0603(2018)19-0170-01
在中职院校里,学生的基本状况是基础知识比较薄弱,理解能力相对较差,逻辑思维能力不强。面对这些学生如何讲好程序设计课?传统的程序设计,偏重于课程的知识体系讲解,例如讲C程序设计时,大部分以知识结构为体系的教材的章节都是按C程序设计简介、数据类型、运算符和表达式、控制语句、函数、数组、指针、文件等来编排的,看起来知识系统十分严密完整,但却脱离实践与学生实际。不少学生反映,这门课程的学习开始时觉得枯燥无味没有兴趣,中间时却感到神秘莫测难以理解,到最后则认为杂乱无章不知何用。让学生编程解决一个简单的实际问题,学生感到一头雾水,“老虎吃天无处下爪”。
看来中职的程序设计课程到了非改不可的时候,否则我们培养的人将是不会动手的书呆子,毕业时将难以就业。所幸的是,这些年关于中职教育的教学改革如火如荼,关于程序设计课程的改革也不断深入。在学校各级领导的大力支持下,我们也进行了大胆的尝试,在程序设计课程教学实践中,引进了项目教学法,尝试用项目教学代替知识教学,并取得了一些可喜的成绩。
与传统的按知识系统组织教学不同,项目教学是以一个个具体的生产、生活中活生生的实例来组织教学的,因而也称为案例教学或任务教学。当然这些实例的安排应按照由浅入深、循序渐进的原则进行。
这样组织教学,由于课堂上少了从概念到概念的抽象讲解,多了从实例到动手解决问题的具体应用,教师讲起来生動活泼,学生学起来情趣倍增,整个课堂教与学互动,气氛热烈,效果甚好,真正把过去按知识结构组织教学所带来的难以避免的“填鸭式”“满堂灌”的教学,变成了课堂上教师为主导、学生为主体的启发讨论式的双向互动教学。学生感到程序设计再也不是空对空的纯理论,而是密切结合实践解决实际问题的课程,从而极大地调动学生的学习情趣和积极性,有助于培养他们的创新精神,有助于训练他们的动手能力,有助于增强他们的竞争能力。
例如,以400米标准跑道进行10000米赛跑为例,对C语言的循环结构做了重点介绍。指出C语言中,循环有三种描述形式。一种是“先判后做”循环;一种是“先做后判”循环。而不管是哪种循环,都是当循环条件成立时做循环,一旦循环条件不成立,则立即结束循环。
“先判后做”循环有两种描述形式:while循环和for循环;“先做后判”循环只有一种描述形式:do……while循环。只不过对于while循环和do……while循环,循环变量必须在循环语句开始关键字while或do之前赋初值,并且循环体内必须有循环变量的显式更新语句,而循环条件则放在while关键字之后的一对圆括号内;而for循环则将循环变量的赋初值语句、循环条件语句、循环变量的更新语句,都集成到了for关键字之后的一对圆括号内。它们还可以相互嵌套用来解决比较复杂的问题。
在讲解了三种循环描述各自的语法结构后,可以指导学生画出for循环流程图。最后,引导学生写出C语言源程序如下:
#include
void main()
{
int i,j, gzj,dzj;
for(i=16;i<=87;i++) //区码循环
{
printf(“第%2d区\n”,i);
gzj=i+160; //汉字机内码高字节等于区码+160
for(j=1;j<=94;j++) //每个区内的位码循环
{
dzj=j+160; //汉字机内码低字节等于位码+160
printf("%c%c ",gzj,dzj); //输出一个汉字
if (j%25==0) printf(“\n”);//每行输出25个汉字
}
printf(“\n”); //位循环结束,换行
}
printf(“\n”); //区循环结束,光标复位到下行首列
}
经过编译、连接、运行,果然达到了全部汉字一个不落输出的设计要求。
经过这样教学,学生普遍反映具体生动,易于理解,便于掌握,真正学到了使用程序设计解决问题的方法。
总之,中职院校的程序设计课程,尽管较为简单但却很难教好,必须进行教学改革。改传统的以知识结构为主线组织教学为以项目任务为主线组织教学,会起到事半功倍的效果。这对于提高教学质量,培养学生的逻辑思维能力,训练学生的动手能力,增强学生的创新意识,都将起到很好的促进作用。
参考文献:
[1]赵森.高职高专21世纪计算机规划教材:C程序设计[M].北京:冶金工业出版社,2005.
[2]李丽娟.C语言程序设计教程[M].北京:人民邮电出版社,2006.