程序设计语言类课程教学选题策略

论文摘要:摘要:程序设计课程几乎是所有高校理工科专业的基础课,对枯燥琐碎的语法细节必须辅以例题讲解。以C语言为例,结合教学经验,对程序设计语言类课程的教学组织和教学选题策略进行总结和探讨,形成了一套行之有效的教学选题策略,对提升教学效果有显著帮助。
关键词:程序设计;C语言;教学选题
16727800(2012)008021702
作者介绍:鲁萍(1979-),女,西安建筑科技大学理学院讲师,探讨方向为计算机仿真、计算机网络、多媒体技术。
0引言
程序设计课程几乎是高校所有理工科专业的基础课,以培养学生实践革新能力为导向,增强学生程序设计能力为目的。这类课程在课堂授课中对枯燥琐碎的语法细节必须辅以例题讲解,选择恰当的例题能有效地提升教学效果,有助于学生掌握程序设计的思想策略,培养逻辑思维能力。以《C语言程序设计》课程为例,笔者在多年教学中总结了例题选择的一些基本原则和策略,对提升教学质量有显著帮助。
1避繁就简,用完整程序辐射零散知识
C语言教学离不开繁琐的结构及语法细节的学习,不利于以整体上掌握C语言,而且过分琐碎可能会打击学生学习兴趣,以而丧失学习的动力。笔者认为学习C语言应避繁就简,用完整程序辐射零散知识。
比如函数的基础知识包括:函数的定义、声明、调用,函数的返回值,函数的形参和实参,这些知识点可以融进一个典型例题里。例如,以变量定义开始,逐条执行语句,通过多媒体动画演示计算机所对应的操作:①主函数为变量a、b、c分配存储单元;②键盘输入为变量赋值;③主函数调用自定义函数max:为形参x、y分配存储单元并由实参a、b进行值传递;④为变量z分配存储单元;⑤执行if语句为z赋值;⑥返回主函数,带回z值赋值给c,之后释放xyz的存储单元;⑦输出函数。以上每一步都有相应的程序流程动画演示,让学生可以深刻理解程序的执行以及函数的基础知识。通过动画演示存储单元分配的历程,学生易于理解,并为后面数组元素和数组名作为函数参数区别打下铺垫,也为局部变量概念打下铺垫。
2以C语言编程为主,数学模型构建为辅
《C语言程序设计》课程对理工科各专业学生来说,其作用在于让学生掌握程序设计的思想策略,培养逻辑思维能力,能够将自然语言描述的不足转化为计算机语言描述。由此,选择算法案例时尽量避开复杂的数学计算,多选用有实际生活参考的运用算法。
比如古典数学不足:有一对兔子,以出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。检测设所有兔子都不死,问每个月的兔子总数为多少?
要解决这个不足需要两个步骤:①构造数学模型;②编程序,将数学模型用C语言表示。这个不足的数学模型是 Fibonacci数列,要讲清楚如何构造出这个数学模型很麻烦,使一些学生因听不懂算法失去继续学习的兴趣。而C语言教学的任务是将一个已经构建好的数学模型用C语言表示出来。由此,对于这类不足应尽量避开讲解构建复杂数学模型,只要求学生对给出的模型进行编程即可。
再如第二章算法,例子非常多,而且大部分例题需要较为复杂的算法,如果每题都把精力集中在具体的算法探讨上,可能就会让学生陷于算法的迷宫中而迷失方向。运用短小典型的算法例题说明流程图表示不足即可。
3难点分散,化整为零
第四章输入输出函数的格式规定是C语言中非常繁琐的一部分内容,讲起来枯燥无味,学生自学也是毫无头绪。掌握这部分内容的最好策略是上机实践,观察不同符号的输出格式变化。可是在教学实践中,当学生学到这部分内容时还不具备良好的自主编程能力,很多学生会由此失去信心。鉴于此,笔者对这部分教学内容进行调整,不再专题讲授,而是分散教学。在前三章的教学例题中,注意选择恰当的输入输出语句,让格式由易到难,让学生见一个记一个。以笔者部分教案为例说明,列出以下例题中出现的输入输出函数及教学提示。
printf ("This is a C program.\\n"); //输出字符串
printf(“sum is %d\\n”,sum);// %d 格式串输出整数
scanf("%d,%d",&a,&b); // 输入 ,%d整数,&
printf(“The area is %f”, a);// %f 输出实型
printf("%c %c\\n",c1,c2);// %c 输出字符型
通过前三章的例题,学生已经熟悉printf函数,在第四章对前面的格式综合小结,学生很快就能掌握基本格式。scanf格式雷同,scanf的讲解重点是输入数据格式。选择例题要前后呼应,前面的例题尽量为后面的知识作铺垫,讲解时稍加提示,即可达到难点分散的目的。
4前后呼应,环环相扣
例题不但要反映本章节的知识重点,还要成为后续章节例题的铺垫,难度逐渐加深。先让学生解决最简单的不足 , 以易到难,依次提升不足的难度。学生对前期简单任务掌握较好,添加新知识时可以把精力集中在新知识上。如果每个章节的例题都独立无关联,则学生除了掌握新知识还要努力学习新算法,使重点不突出。笔者以教案中的部分例题系列为例进行说明。
例1:键盘输入2个整数,交换输出(第三章)。
知识点:C语言程序初步,输入、输出函数, 2个变量的交换。
例2:键盘输入2个数,求两个数的最大数 (第四章)。
知识点:分支结构、if语句。
例3:键盘输入10个数,求其中最大数(第五章)。
知识点:单循环结构,while、do while、for语句。
例4:键盘输入10个数,找到最大数置于最后一个位置(第六章)。
知识点:一维数组、循环(例3)、分支(例2)、交换(例1)。
5结语
在程序设计语言类课程中,精心组织教学内容,设计挑选课堂例题能起到事半功倍的效果,在完成教学任务的同时也能抓住学生的兴趣。根据例题进一步设计习题作业,通过举一反三的策略能有效地强化学生程序设计能力,培养逻辑思维能力。
参考文献:
\[1\]谭浩强.C程序设计\[M\].北京:清华大学出版社,2005.
\[2\]宋毓震,李兆锋.C语言教学的实践与深思\[J\].内江科技,2007(7).
\[3\]杨理云.《C语言程序设计》教学策略探讨\[J\].中国成人教育,2007(5).
\[4\]李豫颖.C语言教学革新浅见\[J\].贵州教育学院学报:自然科学版,2008(9).
\[5\]张庆岚.梯式教学法在C语言教学中的运用\[J\]. 长江大学学报:自然科学版,2008(4).
\[6\]鲁萍,候筱婷.运用型本科计算机图形学实践教学环节革新\[J\].软件导刊,2011(6).(责任编辑:余晓)

相关论文

在程序设计语言中双语教学

论文摘要摘要:以双语教学的概念出发,对计算机程序设计课程双语教学进行了较为深入的探讨,提出了有益于双语教学的策略和方式,并针对在教。
浏览量:142602 点赞量:30519

简析高职院校计算机语言类课程教学改革

作者简介:方富贵(1984-)男,汉族,四川自贡人,助理讲师。摘 要:本文拟针对高职院校计算机语言类课程教学存在的理由,通过对教学策略。
浏览量:156732 点赞量:34045

高职院校《VB程序设计基础》课程教学策略

[摘要] 《VB程序设计基础》是大专院校许多专业必设的基础课,其目的是提升学生逻辑思维能力和利用计算机解决实际不足的能力,为学生以后的。
浏览量:20054 点赞量:6365

简析《程序设计语言》性教学改革和实践

摘 要:为让学生更好掌握程序设计的基本策略和培养他们利用计算机分析理由、解决理由的能力,论文在分析程序设计语言课程目前状况和研究性。
浏览量:21255 点赞量:6528

程序设计类课程教学系统

【摘要】在程序设计教学系统模型的设计上引入互连体和自主单元的概念,将程序设计教学中各个任务用互连体和自主单元的互连来实现。解决程序。
浏览量:69400 点赞量:15560

教学改革高校语言类课程教学革新

【提 要】 高等学校语言类课程应着手从课程设置、教学内容、教学方法等方面进行改革,增设应用性强的选修课,加强教学内容与中学语文教学。
浏览量:33182 点赞量:8622