面向编程思维能力培养的C语言教学改革研究

上传人:I*** 文档编号:188541543 上传时间:2021-07-31 格式:DOC 页数:7 大小:141KB
返回 下载 相关 举报
面向编程思维能力培养的C语言教学改革研究_第1页
第1页 / 共7页
面向编程思维能力培养的C语言教学改革研究_第2页
第2页 / 共7页
面向编程思维能力培养的C语言教学改革研究_第3页
第3页 / 共7页
面向编程思维能力培养的C语言教学改革研究_第4页
第4页 / 共7页
亲,该文档总共7页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《面向编程思维能力培养的C语言教学改革研究》由会员分享,可在线阅读,更多相关《面向编程思维能力培养的C语言教学改革研究(7页珍藏版)》请在金锄头文库上搜索。

1、 面向编程思维能力培养的C语言教学改革研究 尹波孟爱国朱前飞+左利芳摘 要: 在信息时代,具备基本的编程能力已成为一个合格的理工科大学生的基本要求。针对C语言这一编程语言的启蒙课程,结合目前高校C语言教学中存在的问题,探索面向编程思维能力培养的教学模式改革。从教学内容、教学手段、考核方式和实践环节管理等角度探讨了教学改革的相关思路,以提高学生的编程能力、解决实际问题的能力和创新能力。关键词: C语言; 编程思维; 程序设计; 教学改革G642 文献标志码:A :1006-8228(2016)11-67-03Research on the teaching reform of C languag

2、e for trainingof the programming thinking abilityYin Bo, Meng Aiguo, Zhu Qianfei, Zuo Lifang(School of Computer and Communication Engineering, Changsha University of Science and Technology, Changsha, Hunan 410014, China)Abstract: In the information age, with the basic programming ability has become

3、the basic requirement of a qualified science and engineering student. In view of the C language is the enlightenment course of the programming language, combined with the problems existing in the C language teaching in universities, the teaching mode reform for the training of the thinking ability o

4、f programming is explored. From the angle of teaching content, teaching method, examination method and practical teaching management, the related ideas of teaching reform are discussed, in order to improve students abilities of programming, of solving practical problems and to innovate.Key words: C

5、languagem; programming thinking; programming; teaching reform0 引言随着信息科学技术的迅速发展与广泛应用,具备基本的编程能力成为一个合格的理工科大学生的基本要求。C语言被国内大多数高校列为计算机程序设计的基础课程,成为理工科大一学生的必修课程,也是编程语言的启蒙课程1-3。C语言是一门实践性比较强的课程。传统的C语言教学将语法作为讲解重点,使得学生容易陷入语法知识的细枝末节而忽略了程序设计的本质。一方面,记忆大量的语法规则、语句格式,降低了学生对编程的兴趣,甚至从此畏惧编程;另一方面,造成了“高分低能”的现象,许多考试成绩优异的学生

6、,编程动手能力不足,甚至编写程序时无从下手1。实际上,程序设计教学的目的,不是简单地要使学生掌握语言的基本规则,而是要培养其解决实际问题的能力和编程实现的能力。学习语法的目的在于形成下意识的习惯,并不能引导写出有效的程序。程序设计最重要的思维过程是如何把目标域问题建模成计算(即如何从已知信息机械推导出待求信息),这个过程是独立于编程系统的,然后再根据选用的编程语言将计算过程形式化出来。因此,C语言作为编程语言的启蒙课程,最重要的是培养学生的编程思维能力,以启发和训练学生的编程思维为主导,着眼于解决问题的思路和方法,从而增强学生解决实际问题的编程能力,激发学生的编程兴趣,培养学生的创新能力。也为

7、学生在后续学习过程中更容易接受其他编程语言。本文对面向编程思维能力培养的C语言教学改革进行了探索。通过C语言课程的学习,使得学生具有以下基本编程素质:基本的编程思维;调试代码的能力,良好的编程习惯;撰写可读性强、扩充性好、易于复用的优质代码的能力;查找技术资源与阅读技术文档的能力。本文论述主要分为三个部分:第一部分分析目前C语言教学存在的问题,提出面向编程思维能力的C语言模式改革;第二部分陈述了编程思维的具体内涵;第三部分提出了面向编程思维能力的C语言教学改革的具体措施。最后,对C语言课程教学进行了总结与展望。1 编程思维核心内容C语言抽象程度不高,主要的特点包括“面向过程”(以事件为中心进行

8、编程)、结构化的程序(函数),以及较强的硬件控制能力。编程思维包括分析问题、归类(建模)和实现。核心在于,把问题域涉及到的数据映射到合适的数据结构,把通过程序解决问题的过程映射为具体的算法逻辑。根据程序设计的要求和C语言的特点,C语言教学中的编程思维能力主要包括以下内容。 框架思维:培养编程的全局思维能力和算法的整体设计能力,理清编程思路,搭好程序的大体框架,再实现具体的代码。 组件化与模块化:将复杂的问题拆解成小问题,使用模块化的方式(函数)构建程序。 函数思维:重复使用到的运算过程储存为标准化的函数。学习C语言自带的库函数,库函数是将C语言应用于实际的基础。 算法思想:程序运行效率最终取决

9、于算法。分治与递归等基本的算法思想,算法的评价。2 具体改革措施2.1 教学内容改革:主题式教学,精讲语法知识,结合编程案例按照循序渐进的知识学习原则,将C语言教学分为四个阶段:由基本的语法和简单的编程思维入门,到C语言库函数,再到程序效率的追求,最后到特定领域的专业应用。前面两个阶段是基础,目标是掌握C语言程序设计的基本方法和编程思维,具有一定的C程序编程的能力。后面两个阶段是提升,将C语言和计算机相关知识紧密结合,目标是写出可运行程序,进而写出运行效率高的程序,并结合特定领域进行应用。在各阶段根据知识点的衔接性和相关性,设置若干主题。精讲语法内容,不纠缠于过多的语法细节;由于C语言是除了汇

10、编最接近硬件的程序设计语言,紧密联系底层知识讲解语法内容,有助于对C语言语法和特点的理解。使用案例法,重点讲解分析问题和解决问题的思路,培养编程思维能力。基础阶段各主题以及主要内容如下。 编程准备。主要内容包括:C语言程序设计的基本思想(面向过程、结构化编程);基本的编程思维;程序运行效率最终取决于算法。案例包括拼图小游、查找电话簿等。 变量与内存布局。主要内容包括:基本数据类型在内存中的表示形式;不同数据类型之间的转换;运算符;数组、结构体在内存中的表示形式。 控制结构与算法(算法思维)。主要内容包括:顺序结构、选择结构、循环结构;数据查找与排序问题;算法的时间复杂度。案例包括线性查找、折半

11、查找等。 函数(模块化、函数思维)。主要内容包括:函数参数的传递方式;函数的嵌套调用与递归调用;常用的C语言库函数。案例包括信息管理系统的程序框架设计等。 数组与字符串(批量处理) 。主要内容包括:数组的本质(批量处理);递推与递归;栈、堆、C语言中的越界检查。案例包括冒泡排序、递归排序等。 指针与内存管理。主要内容包括:指针与函数、指针与数组;指针与内存管理;文件。案例包括链表、信息管理系统部分功能的实现等。 C语言的函数库(函数思维)。主要内容包括:字符串、输入输出、动态分配函数和随机函数;进程函数、网络交互;阅读技术文档。案例包括图形时钟、小游戏等。与C语言基本阶段的精讲不同,提升阶段围

12、绕数据结构与算法、图像处理、网络、操作系统几个方面展开,讲授核心知识和典型案例,开阔学生视野。提升阶段包括以下主题:数据结构与算法;图形图像处理;网络处理;操作系统管理;游戏制作。尽管主题内容不同,编程思维的侧重点不同,但基本的编程思维自始至终都贯穿其中。例如框架思维,具体体现在:分析问题解决问题的过程中,先理清楚大体思路;程序的编写过程中,先写好程序的大致框架,再细化具体的代码。2.2 教学方法改革:采用现场编程讲授C语言基础内容,采用微课等网络教学方式讲授C语言提升阶段知识C语言基础阶段以课堂教学为主,一般是现场编程。原有教学方法主要使用多媒体课件,对于案例的讲解,一般也是通过PPT讲解后

13、,粘贴到开发环境下运行一遍。由于幻灯片的演示过程相对较快,没有给学生思考和消化的时间,思路也不是学生自己想出来的,使得知识吸收率较低。现场编程教学是一边讲解一边编写代码,具有“且想且编程”、开发环境下现场调试代码的特点,能够较好地展现分析问题和解决问题的编程思维方法。同时,将基本的语法知识贯穿于程序的编写和调试过程。现场编程过程,积极与学生互动,训练学生检查错误的能力,鼓励学生独立思考。使得学生能够跟着老师的思路一步步用代码解决问题,最后还能总结出学习过程中的问题所在,从而提高学生的动手能力,形成正确的程序设计理念。针对C语言提升阶段的知识内容,采用微课等网络教学方式讲授4-5,学生课外自主学

14、习不列入考试内容。目的在于将C语言和计算机相关知识紧密结合,使学生进一步了解C语言的特点和用途, 也是编程思维的综合训练, 使得学生写出效率高的实用的代码。2.3 考核方式改革:对学习过程进行监督和考核,采用编程题型进行机考考核是针对基础阶段的学习。提升阶段不计入总成绩。C语言学习的目的是提高学生编写程序的能力,这需要学生多动手编程。传统的考核以期末考试为主,并且考试题型包括选择题等大量的主观题。这种考核方式的问题在于:主观题不能真实反映学生的编程能力;对学生学习程序设计课程产生误导,把实践课程变成了“做题”课程,造成学生忽视编程实践能力的锻炼;一考定成绩,缺乏对学习过程的有效监管,不能督促学

15、生重视平时的学习和积累。因此,改革考核方式,原则和措施具体如下。 对学习过程进行考核:采用“平时作业+小考+实验+期末考试”的方式,学生成绩按以下方法记分:平时成绩占40%,实验占10%,期末考试占50%;其中平时成绩包括平时作业和小考的成绩。通过对整个学习过程考核,既可以督促学生学习,授课教师又可以及时获知学生的学习情况,能够针对难点和问题,及时进行反馈和辅导。 考试题型统一为编程题目:不管是作业、实验、还是考试,均使用编程题目作为考试题型,反映学生真实的编程能力,也促使学生多动手多实践。 及时出成绩,增加成绩的透明度:作业、实验和考试,均使用机考考试系统,学生提交后,及时出成绩。平时作业允许学生刷题,鼓励学生多做多练,实验和考试不允许刷题。2.4 重视实践环节,鼓励学生参赛要提高学生解决问题和实际编程的能力,必须要求其多动手写代码,因此实践环节至关重要6。实践环节采用“预习+编程+点评”的方式。为了保证上机效果,要求学生上机前预习。同时加强实践环节的考察,要求学生必须在课堂内完成实验,由机考系统当场给分。教师根据实验情况进行现场点评。鼓励优秀学生参加计算机类的作品比赛、大学生创新性实验项目、大学生课外科技立项等项目,培养学生的实践能力、解决问题的综合能力,鼓励学生创造性思维。更重要的是,以上述比赛和项目为契机,激发学生的编程兴趣。3 结束语编程思维是提高学生编程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号