- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序的设计课程架构的研究
C语言程序的设计课程架构的研究
【摘要】本文结合心理学及软件工程提出新的C语言程序设计课程架构,以便在C语言程序设计教学中采取多种有效的教学手段,使学生在掌握基本概念的同时提高解决实际问题的能力,培养学生的学习兴趣,提高全国计算机等级考试的合格率,增强就业竞争力。
【关键词】C语言 程序设计 课程架构
【中图分类号】G642 【文献标识码】A 【文章编号】1009-9646(2009)01(a)-0125-02
我国高校理工科专业一般在大一第一学期开设C语言程序设计,采用传统课程架构进行教学,学生普遍感到学习有难度,特别在全国计算机等级二级C语言程序设计的考试笔试成绩一般都不理想,例如我国某全国重点大学考点在2008年4月考试中二级C语言的笔试合格率只为54.3%,而一般三本考生的合格率只为15%左右,现在理工科学生等级考试合格证书事实上已成为找到稍微理想的工作的必要条件,为此必需研究改革C语言程序设计课程架构,提高学生等级考试的合格率以及毕业就业率。
1 立体化课程架构
课本中的例题可分为说明性例题和应用性题例,说明性例题用于说明语法现象,应简明扼要,可读性强,应用性题例则主要为应用所学知识解决实现问题,应多选择趣味性强的程序,培养学生的学习兴趣。
在二级等级考试中,还包括公共基础知识,具体为数据结构与算法、程序设计基础、软件工程基础和数据库设计基础,在笔试成绩中占30分,对于大部分非计算机专业,一般都没有开设这些课程,因此考分容易失分。对于公共基础知识的考试知识点,可精心安排“相关知识”,逐步讲解公共基础知识,再配以由真实等级考题改编的说明性例题,这样学生不但在不知不觉中扩大了知识面,也熟悉了考题内容与考试范围。
为对不同基础的学生都有所帮助,每章都安排实例研究,选择有一定深度与有趣的项目,例如井字游戏,基因排序,在每章末尾还应安排程序陷阱,用于讲解程序中容易出错的语法现象。最后还应通过教学支持网站补充教学内容,例如课本中的所有程序、常用C编译器的使用方法以及课件等内容。
2 按照学生认知能力与接受能力精心安排教学内容
学生认知能力与接受能力是一个逐步提高的过程,学习知识也是一种螺旋式上升的过程,特别对于C语言,有的语法现象,学生开始学习时,这些内容已超过了他们的认知范围与接受能力,为此可先安排适合学生接受的基础知识,然后再在后继章节中逐步深化,使学生有不断提高与升化的过程,例如对于指针,可先讲解指针的概念、指针与数组、指针与函数参数、字符指针与字符串等基本内容,然后再在后继章节中逐步深入讲解动态内存的分配与释放、线性链表、指向函数的指针与返回指针的函数等内容。
教学难点往往不是教学重点,更不是考试重点(事实上难点往往考得少甚至不考),可集中安排C语言高级主题,例如变长参数和命令行参数等内容,这部分内容,教师可根据教学课时的多少选讲或让学有余力的学生自学。
根据心理学可知人一次的接受能力是有限的,内容越多记忆效果越差,因此对某个语法现象的说明不宜太多,最好不要超过5点,最好理解难度较大的要点可放在程序陷阱中加以讨论,只有理解的知识点才容易识记,因此对每个知识点都要通过说明性题例加以说明。
3 程序可读性是教学成败的关键
现在大部分C语言程序设计的教材的程序注释较少,很多程序根本没有注释,而注释是提高算法可读性的简便方法,因此在讲解程序时,应为程序加上详细的注释,最好对大部分语句以及程序的每个关键点都加以注释进行详细阐明含义及要点。
以前的教材在介绍C语言时,认为C语言是一种介于低级语言与高级语言之间的一种高效语言,用C语言编写的程序的效率更高,强调编程的技巧性,习惯将用C语言编写的源程序编写得短小精精干,比如对于整形变量x,习惯于编写如下形式的代码:
if (x) {……}
else {……}
而这样的可读性较差,如改为:
if (x != 0) {……}
else {……}
则更容易理解。
现在由于硬件技术的快速发展,也随着软件危险的出现及软件工程的发展,相对地,对于程序的运行速度相于地处于次要地位,更强调程序的可读性与开发程序的规范生,因此C语言的教学也应转变思想,应更多考虑程序的可读性与学生的接受能力,而不应过份地强调所谓的编程“技巧”。
对于算法的描述可采用自然语言表示、流程图表示以及N-S图表示。应多考虑学生的接受能力,尽力避免过于强调算法细节而甚使程序不但长也难于理解,比如对于判断年份是否为闰年的算法,根据历法,闰年的条件为:
年份能被4整除但不能被100整除或年份能被400整除
由闰年条件很容易用自然语言描述如下:
如果年
原创力文档


文档评论(0)