APP下载

大学新生C语言课程教学方法探讨

2018-10-21姜利群

学校教育研究 2018年16期
关键词:C语言新生习题

姜利群

C语言程序设计课程是很多计算机类专业的学科基础必修课。早期的C语言课程一般都在大学二年级才开设,但近年来随着专业培养方案的需要,一些大学将该课程开设在第一个学期。于是,由于新生的一些特点造成了学生普遍地在学习中感到C语言难懂、不好学,这种情况还会致使一部分学生不能适应大学学习生活,打击了他们的自信心,甚至出现学习障碍,惧怕后面的专业课的学习。同时也使很多教师感觉C语言课程不好教。笔者总结这几年大学新生C语言课程的教学实践,结合大学新生的特点,谈谈自己一些肤浅的认识。

一、大学新生的学习特点

大学新生学习C语言课程要关注以下三个特点:

第一是心理特点。大学新生都经过了十年寒窗的苦读,非常疲惫,想着进入了大学就可以好好放松了,容易出现松懈、懒惰情绪。

第二个特点是基础差异大。很多中学只重视高考课的教学,而计算机这些辅助课程基本上是走过场,因此计算机基础的好坏就凭个人的喜好了。

第三是学习方法的不适应。大学的学习要求和学习方法与中学的有很大差异。中学是以老师指导和监督为主,自学为辅,即被动学习为主,主动学习为辅。大学则倡导专业性、自主性,学习方式灵活,被动学习和主动学习相辅相成。这使一部分学生很不适应,感觉无法掌控自己的学习节奏,不能够适应大学的新学习环境。

二、C语言课程教学对策

1. 合理安排教学内容

合理安排教学内容包括两个方面:教材的选择和教学内容的安排。

选择合适的教材要根据专科还是本科、学时的多少进行。例如,对专科学生,可以选择实践性较强的、实例型的教材;对于本科学生,常采用理论性较强的教材,如谭浩强的《C程序设计》等。

2. 注意教学方法的衔接

C语言基础部分的教学模式要从帮助学生转变学习方式的角度设计。重点以老师指导和监督为主。例如,C语言基础部分的内容主要是一些基本概念,我们就在课堂教学中以不同的方法适当穿插各种小练习,在每次课后都要布置较大量的课后习题,并且要求这些习题在下次课前提交,这样强化训练、强迫学生跟着教师的步骤前行,即延续中学的被动学习方式。同时,教师要在下次课堂上对练习中的共性问题和重要知识点进行点评,强化学生的记忆。

举例:运算符“/”很常用的,教师在讲解除号“/”的功能时也一定会讲解“整数相除结果是整数”这个特点,但是很多学生在编程时忘记特点。对此我们布置课后习题“下面表达式中结果不是1.5的为(?)。 A. 6/4.0 B. 6.0/4 C. 6/4 D. 6.0/4.0”。经过习题的训练,强化了学生对除法运算符“/”的“整数相除结果是整数”特点的注意和记忆,基础就更加扎实。

上面小示例只是说明在初始阶段是被动学习方式,教师要在细节上多提示学生,多做基础性的练习。随着课程的深入,再慢慢地减少课后习题量,转入实验训练,而课后作业则布置一些思考题、选做题,并且引导学生通过看参考书、上网查找等方式来完成任务,以此来引导学生的自主学习。

3. 夯实基础、稳步前行

在新生的课程教学中要照顾到学生之间的基础差异,注重夯实基础、稳步前行。例如,在控制结构部分,一些教师偏爱讲那些逻辑很复杂的示例,而忽视简单知识的巩固。实例:有位教师在if语句教学中,对于if语句的结构、基本用法时用一个简单示例就带过了,认为重点应该讲类似于“判断闰年”的示例、if语句的嵌套等知识点,结果使学生对某方面难题会做,而类似于判断n为0的基本用法反而不熟悉。注意到这点后,我们加强了基本知识点的练习,方法是布置相应的课后练习题。

4. 注重知识的系统性和综合能力的培养

为使学生系统地掌握知识,培养综合编程能力,我们引入案例把前后的知识点串联起来。在函数之后设置一个综合实验“单科学生成绩管理系统”,要求实现一个成绩管理系统,用于教师管理一门课程的成绩。系统功能有:成绩录入、打印成绩单、修改成绩、成绩排名、统计分数段、统计平均分、统计不及格学生等。教师可以反复选择功能项,完成多项成绩管理工作,直至输入0才结束。

实际上,“单科学生成绩管理系统”实验内容的训练从基础部分开始就分步引入了:

(1)输入输出中布置习题“输出菜单”;

(2)循环中设置实验题“输入10个成绩,输出最高分、最低分和平均成绩”;

(3)数组中有“分数排序和统计不及格人数”的实验训练;

(4)函数中有“成绩录入函数设计、打印成绩单函数设计”实验。

这样,到函数之后学生做综合实验就比较容易了。根据学生的学习情况和能力,综合实验也可以改成多科学生成绩管理系统。如果学生的学业负担比较重,就将综合实验以小组形式完成,这样不仅能降低学生的工作量,也锻炼学生的协同工作能力。

通过综合实验,促使学生将前面积累的零散知识进行梳理、总结并进行综合应用,对前面几部分知识点有一个系统性的认识,也提高了分析问题和综合程序设计的能力。同时,学生看到了C语言的实际应用功能,提高了学习C语言的兴趣,由于实验比较容易完成,也使学生很有成就感,增强了学习信心。

三、結语

以上是总结本人的教学实践的一得之见,未必适合普遍的情况。我想只有从学生的实际情况和特点来设计教学,才能在有限的学时内让大学新生学懂、掌握更多的C语言编程技术,同时培养新生的自主、合作和探究的学习能力,有利于他们的成长。

猜你喜欢

C语言新生习题
重获新生 庇佑
“C语言程序设计”课程混合教学探索
新生月赛优秀作品
枯蓬新生
一道课本习题“链式反应”
精心设计习题 构建高效课堂
新生
基于C语言的计算机软件编程技术探究
中职C语言单片机课堂教学中的趣味性探讨
对一道习题的多角度思考与拓展