基于项目教学的C程序设计教学实践

【摘 要】本文针对C程序设计教学过程中,学生普遍认为C语言难学和编程难的现象,分析问题存在的原因,并从几个方面探究了改善C语言教学效果的方法.

【关 键 词 】C语言;程序设计;项目教学

C程序设计是计算机专业的一门必修课程,也是学习如何编程的入门课程.不少高校不仅在计算机专业开设了C语言的课程,而且在非计算机专业也开设了C语言课程.我院建筑工程学院各专业也开设了这门课,主要是培养学生逻辑思维能力.但每学期期中教学质量检查的学生座谈会上,都有学生提出C语言枯燥、难学的问题.为此,我们专门成立课改小组,分析问题存在的原因,并探究改善教学效果的方法,让学生真正喜欢上C语言,并能从中学到一些编程方法和技巧,为以后专业服务.

1.目前存在的问题

传统教学方式多以课堂讲解、小程序模拟为主,学生虽然理解了各章节知识点,但遇到一个复杂问题仍然不能综合运用所学知识来解决它.实验课大多是验证性是实验,缺少设计性实验.学生在调试程序过程中,出现编译错误,不能快速找出原因,缺乏理论与实践相结合的能力和英语阅读能力.由于上机学时有限,课堂不能完成的实验需要学生课后继续完成,在自学过程中有疑问,是查找资料解决还是请老师帮助都是我们改善教学效果要解决的问题.另外,学生在学期前1/3时间里还能保持精神集中、兴趣饱满的状态投入学习,但随着内容难度的加深,慢慢会出现畏难、厌学等情绪,需要老师多加鼓励,并利用学生感兴趣的游戏、管理系统、图形等案例激发他们的学习兴趣.

2.改变教学方式及方法,合理评价学生能力

2.1 项目教学,注重能力培养

实践中我们采用“项目驱动”教学法对整个教学过程进行整合,课程教学从学科式课程模式改变为工作过程导向课程模式,整个教学过程分为两个阶段:基础知识储备阶段和项目开发阶段.基础知识储备阶段,结合教材章节设计简单的任务,使学生对C程序设计的基本概念、基本语法规则以及基本编程技巧进行熟悉、演练,直至基本掌握.我们选择了通讯录输入输出、计算器设计、个人所得税计算、九九乘法表等小实验引出相关知识点的学习.项目开发阶段,学生以小组为单位选择适当的项目按照一定的规范进行项目实践.我们的项目包括系统类、小应用程序类和游戏类.通过教师的指导,以及学生自己到图书馆查阅资料或网上咨询,以小组为单位完成程序的编写,并能运用学过的技巧独立上机调试完成.以团队协作的方式,培养了学生的创新精神、创新能力,调动学生学习的主动性,挖掘学生的学习潜能,激发学生的学习热情,让学生体验到学习的乐趣.

2.2 精选案例,激发学习兴趣

在课堂中我们引用了生活中的一些实例来讲解知识点,比如以“计算器设计”讲解switch语句的用法,以“ATM界面设计”为例讲解函数的调用,以“扫雷游戏”中旗子、雷爆炸为例讲解图形函数的应用等.举例宜少而精,分析应细而透,要尽可能安排较多的上机时间,让学生有充分锻炼、展示才华的机会.

C程序设计是一门实践性很强的课程,学生只有在实际编程过程中才能提高自己的能力,唯有通过实践,学生才可以加深理解,培养兴趣,获取知识.比尔·盖茨及他的伙伴艾伦·保罗的编程知识基本上都是从实践中摸索出来的.因此教师的主要作用是“授之以渔”.只要有兴趣,无师也能自通,而且兴趣的培养比知识的获取更为重要.

2.3 项目考核,掌握整个程序开发过程

C程序设计课程我们采用项目考核与平时成绩相结合的考核方式,培养学生使用程序设计方法求解问题和编程的能力.在项目开发阶段,我们为学生提供多个题目,各设计小组自由选择,也可以令立新题目,要求每个班题目不能相同,小组共同讨论分析所选项目的基本功能,引导学生进行系统总体设计,画出项目模块功能图,分任务模块编写代码,最后提交项目报告.

课程成绩由两部分构成:平时成绩(包括平时作业、课堂表现等)占40%,项目考核成绩占60%.项目考核成绩按100分记,具体得分标准见表1.

3.创新教学手段

3.1 采用现代化教学媒体

积极制作和使用多媒体课件,充分高效地发挥这些教学工具的功能,但要注意讲课时不能将例题的程序代码一下子全部显示在屏幕上,运行时只能看到最后结果,学生没有机会思考代码过程,更无法体会其运行过程中可能出现的错误.较好的方法是,对于比较难理解的知识在课件中制作形象的动画,比如循环的执行用动态鼠标指针跟踪运行过程就能很好帮助学生理解.教师对经典的题目进行现场编程或将代码逐行显示,并设置典型错误,让程序在调试中完善,让学生在思考中掌握,引导学生读懂英文提示,提高程序改错速度.比如数组的赋值,可以采用分步执行,让学生逐步看到每个数组元素值的变化.

3.2 合理利用Blackboard教学平台

合理利用网络资源可以解决学生课外学习困惑和教师辅导答疑等问题.Blackboard(简称BB系统)是我院广泛使用的教学平台.在C程序设计的BB系统中,我们提供了该课程的所有教学资料,包括课程介绍、课程大纲、考核方案、课件、教学案例、项目报告模板等,还有常用软件的相关下载及讨论板,为学生提供作业提交、小组讨论、师生互动、作业评分等功能,方便使用,资源共享,沟通自由,是教学相长的好伙伴.


4.总结

在教学实践过程中,我们在内容上进行了合理的删繁就简,在教学方法上采取了项目驱动,在教学手段上采用了多媒体演示与板书分析相结合,对难于理解的概念设计了大量的动画说明.平时成绩和项目考试成绩评定采用了人性化评分原则.通过情境教学、项目教学、课堂讨论、上机操作等方式,给学生提供一个激发创造性的环境,真正做到以学生为中心.以上是我们在C程序设计教学中关于教学方法、教学手段等方面的一些微薄经验,已经收到了较好的成效,学生学习本课程的积极性明显提高,动手能力明显增强,教学质量显著提高.关键是学生参与了整个项目的设计与开发过程,对程序设计的思路与方法得到了新的认识和锻炼,培养了其逻辑思维能力,为后续专业课的学习奠定了基础.

类似论文

《C程序设计》教学心得

【摘 要】“C语言程序设计”课程是大中专院校计算机相关专业基础课程之一,很多学校对这门课程很重视,但效果却不理想 学生反映难。
更新日期:2024-6-5 浏览量:12845 点赞量:3932

项目导向的Web程序设计教学实践与评价

摘 要:针对目前Web程序设计教学中知识点繁杂,学生动手能力不足的情况,介绍了将项目导向的互动学习理念。
更新日期:2024-9-9 浏览量:19593 点赞量:6064

项目导向的Web程序设计教学实践与评价

摘 要:针对目前Web程序设计教学中知识点繁杂,学生动手能力不足的情况,介绍了将项目导向的互动学习理念引。
更新日期:2024-8-23 浏览量:108668 点赞量:24175

C++程序设计课程教学改革

摘 要 :C++程序设计课程在计算机科学与技术、软件工程等专业的课程体系中处于基础地位,它对面向对象的软件。
更新日期:2024-2-1 浏览量:7800 点赞量:3013

C程序设计语言教学方法的

【摘 要】目的:探索提高C程序设计语言课程教学质量、增强教学效果的方法 方法:在教学实践过程中尝试多种教学方。
更新日期:2024-9-27 浏览量:119364 点赞量:25726