APP下载

基于工程的C语言程序设计实验教学模式的研究

2016-09-29

科技视界 2016年20期
关键词:实验教学语言工程

林震 刘俊景 侯杏娜 陈寿宏

【摘 要】本文针对《C 语言程序设计》实验课程在教学中存在的一些问题,提出了基于工程的实验教学模式的改革探索,将实验内容与工程项目相结合来设置学生的学习内容,最后对教学改革所取得的效果进行了分析与总结。

【关键词】C 语言;工程;实验教学

1 目前C语言实验教学存在的问题

C语言程序设计实验教学是提高编程能力非常重要的一个环节,特别是在国家提倡“卓越工程师”的背景下,提高学生的动手编程与软件开发能力显得更为重要。但目前不管是在实验内容的设置上还是教学网络资源的建设上都存在一些需要迫切解决的问题,主要表现为如下几方面:

(1)学生觉得相应的语法知识并不难,听老师分析讲解例题时也觉得很明白,但真正让他们自己动手编程解决实际问题时,有相当一部分学生感到无从下手。

(2)大多数教材和理论课堂教学重点放在了C语言的“语法研究”上,而课程考核的考试内容大多也都无法逃脱“语法”的束缚,最后形成学生“懂语法、会做题,但不会编程序”的教学后果。

(3)上机课安排的验证性实验比例过多,实验内容缺少总体应用的项目。学生程序出错后不是通过调试来改错,而是逐行对照书上的内容进行纠正,因此导致学生不会调试程序,也不会编写程序,更谈不上开发一个具体的工程项目。

因此,探索对C语言实验教学的改革,对提高该课程的教学质量有着重要的作用。

2 C语言实验教学改革探索

本文从实验教学方法和实验内容的设置上进行改革,让学生通过具体项目的开发来了解项目的开发流程和开发要求,使学生逐步具备工程开发应用的能力。具体改革措施如下:

(1)在C语言基础学习阶段,对C语言程序设计中的基本知识结合具体的例子进行分析,让学生掌握C程序设计的语法及初步的调试方法,例如,对于如何调试程序以及如何在调试中添加和消除断点,以便提高调试效率,找出程序中存在的逻辑错误,初学者常常会搞不清楚。我们在课堂上就只讲解单步跟踪调试,让学生先对调试有一个初步的印象,当学生掌握了单步跟踪调试之后,我们在后面的学习中再讲解如何设置断点等较复杂的调试方法,这样循序渐进地去学习,就不会让学生有畏难情绪。同时,在讲解这些知识点时,利用录制软件将这些讲解录制成教学视频,发布在C语言学习网站上,有了这些教学视频,学生在课后就可以上网反复地去听,直到弄懂为止,从而达到自己能动手调试的能力。

(2)在C语言学习进阶阶段,将一个简易的工程项目逐步分解来做为教学内容。在学习完C语言基础知识之后,我们采用工程项目分解教学法,将一个简易的学生成绩管理系统逐步分解成各个实验内容,由浅入深、由易到难,让学生体验项目开发的流程。随着项目任务的逐步实现和项目功能的不断完善,让学生体会到逐步实现目标的喜悦,增强了学生的自信心。例如,学生成绩管理系统的登录,可以让学生领会if…else选择结构的使用,学生成绩的排序功能可以让学生理解“冒泡”排序、for或while循环以及数组的使用,学生成绩浏览功能可以让学生学会函数的使用、结构体的定义和文件指针的利用。从而加深了学生对现实问题的分析、分解、实现的一般的软件开发流程。

(3)建立一个C语言学习网站,在网站上对经典程序源码进行解释,提高学生的程序阅读能力。对于那些基础比较好的学生,在C语言的学习过程中常常有“吃不饱”的情况,为了满足这部分学生的求知欲,我们在C语言学习网站上提供了学生比较感兴趣的经典程序代码和各类C语言程序设计大赛的题目,如五子棋和贪吃蛇游戏,从而可以引导学生阅读程序的源码,提高程序阅读能力,同时提高学生学习的兴趣,最终在读懂程序的基础上可以修改程序和完善程序。而C语言大赛的题目又可以激发学生的求知欲和向更深知识学习的探索欲。

(4)基于C语言,结合学生所学的专业知识,为学生提供相应的程序开发思路。很多学生学了C语言后感觉离真正的软件开发很远,主要是他们不懂现在软件的开发技术,或者说不知道C语言与自己所学专业有什么关联,不知道还要学习什么样的相关课程后才具有当前软件的开发能力。我们在C语言学习网站上给学生介绍当前软件的开发流程,提供与学生所学专业相关的软件开发知识,让学生知道通过后续课程的学习后利用C语言所能做到的事情,例如,对于数学相关专业,可以用C语言来解决如求定积分及牛顿迭代算法等问题,从而激发起学生学习C语言的兴趣和热情。

3 结束语

实践表明,通过基于工程的教学改革尝试,不仅潜移默化地渗透了软件工程的思想,而且重点培养了学生分析问题、解决问题的能力,学生的编程能力有了明显的进步,学生对C语言程序设计实验这一门课程学习的主动性和积极性都有了很大的提高。

【参考文献】

[1]林震.高校C语言程序设计实验教学的改革与探索[J].科技信息,2011,27.

[2]陈战胜.C语言课程创新教学模式研究与实践[J].教育教学论坛,2015,1.

[3]汪繁荣.培养应用型人才的C语言教材改革探索[J].教育教学论坛,2016,4.

猜你喜欢

实验教学语言工程
电容器的实验教学
让语言描写摇曳多姿
几何体在高中数学实验教学中的应用
累积动态分析下的同声传译语言压缩
子午工程