C语言教学方法探讨

来源 :数字化用户 | 被引量 : 0次 | 上传用户:lulufii
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】本文结合C语言课程的特点,分析了当前在教学中存在的问题,提出了一些有效的教学方法,帮助学生激发学习兴趣,提高实践动手能力和团队协作能力。该研究成果取得了良好的教学效果,受到学生的普遍欢迎。
  【关键词】C语言教学 教学方法 程序设计
  一、引言
  “C语言程序设计”课程是信息类专业的一门重要专业基础课程,在整个课程体系中占有重要的地位。C语言学习的好坏,将直接影响着学生进一步学习其它与编程相关的课程的学习效果。因此,作为学生接触到的第一门计算机语言,C语言成为了学生学习其它相关课程的基础和必备技能,学生必须认真对待,将C语言学好。
  为了实现这个目标,教师在教学时采用的授课方式和管理方法将起着关键的作用。在本文中,我们结合多年的教学经验,首先分析了初学者面临的一些问题,然后提出了相应的教学改革措施。这些方法在近几年的教学实践中不断总结与完善,获得了很好的教学效果。
  二、初学者面临的问题
  计算机语言是人与计算机进行交流的语言,它的学习方法与人类的语言的学习方法有很大的相似之处,都是需要掌握一些词汇、语法,然后进行大量的实践,才会掌握这门语言。
  对于初学者,如果一开始就专注于语法,就会觉得C语言学习起来很费劲,甚至会出现厌学情绪,极大地削弱了学习的积极性。因此,在刚开始接触C语言时,不要花费太多的精力去学习语法,而是要采用模仿的方式,学会使用一些常用的语句,解决与例题相似的问题即可。另外,初学C语言时,要将重点放在阅读程序上,而不要一开始就去编写程序,因为在理解了一些常见的程序之后,学生一方面学习了常用的表达法,另一方面,也熟悉了解决问题的步骤与方法,有了这些基础,再去编程解决其它问题就会容易得多。
  当然上面提到的两个问题,是为了让初学者好入门,在学习的过程中采用循序渐进的方式,使学生在保持积极性的前提下学会一些基础知识。对于C语言中的重难点部分,如函数和指针,如何让学生理解它们的用法,则需要一定的教学方法进行辅助,才能达到较好的效果。
  三、教学方法与改革措施
  (一)板书、多媒体和现场编程教学方式的结合
  传统的教学方式是通过板书来进行的。这种方式可以将知识点讲得很细致,容易被学生所接受。然而,板书式教学不是很适合操作性很强的课程的教学,因为这些课程需要给学生作一定的演示,才能获得好的效果。于是,多媒体教学应运而生,教师只要事先做好幻灯片,在课堂上,按一定的顺序演示给学生看就可以了。这种方式可以引入图文声像等各种素材,让学生了解围绕所讲内容的很多信息。不过这种方式也有些问题,需要教师把握好进度,因为信息量很多,就要考虑学生能否接受的问题了。对于编程课程,教师还需要在编程环境中给学生做好现场编程测试,学生才会明白具体的操作方法,便于学生进行重复。
  为了达到好的教学效果,我们通常是将这三种方式进行结合,取它们的优点。比如,在讲解表达式计算的例子时,我们将表达式写在黑板上,用传统教学法对计算顺序进行分析,学生也会跟着一起思考,这样就可以将问题讲得透彻;在给学生讲递归程序时,我们会将事先做好的递归分析的幻灯片展示给学生看,让学生明白其中包含的递推和回归两个阶段;在给学生演示调试方法时,我们会将一个有些错误的程序在编程环境中进行编译,发现错误,分析并改正错误,然后再编译,如果发现错误再进行修改,如此往复,直到整个程序没有错误为止。在这个过程中,我们通过现成的例子,给学生展示了查错和排错的全过程,比起另外两种教学方法,通过直接现场演示将更加直观。
  (二)测试驱动开发
  测试驱动开发是一种新的快速软件开发方法,它的基本思想是用测试推动整个软件开发的进行。在C语言教学中引入测试驱动开发,可以给学生提供了一种新的解决问题的思维模式。这种方法的基础步骤是:首先编写一段个人认为能够解决问题的程序,接着运行程序,如果出错,就检查并排除错误,循环往复,直到没有语法错误。然后,挑选一些典型的测试用例对程序进行测试,看是否能够得到想要的结果,如果某些例子的运行结果出现错误,这就是语义上的错误了,需要对源程序进行修改,直到所有的测试用例都通过为止。
  另外,测试与调试是密不可分的。调试中要进行大量的测试,测试中(特别是白盒测试)也要借鉴调试的方法。采用测试驱动开发,通过列举一些典型的测试用例,让学生重视调试和测试,深入理解程序运行过程,确保程序的正确性与质量。
  (三)项目引导,分组练习
  学习编程的目的就是用来解决实际问题的。为了提高学生的实践动手能力,我们在第一次课就给学生布置了一个项目——学生成绩管理系统。这是学生非常熟悉的问题,对该问题的需求分析就很容易获取了。随着课程的推进,我们会要求学生用不同的数据结构和算法来完成这个项目,可以将整个课程的内容都融合到项目中,让学生对实际问题的解决方法有了一定的了解。
  在给学生布置任务时,我们进行了分组,其目的是提高学生的分工协作能力。我们要求学生2到4人为一组,写清楚每个成员要完成的任务,分开进行编程后,再合并成一个大的程序。对于做得好的小组,还会给予一定的奖励。在分组练习过程中,学生可以互帮互助,分工协作,很好地锻炼了他们的团队意识和实践动手能力。
  四、总结
  本文针对C语言教学中出现的问题,将多种教学方法、测试驱动开发、项目引导和分组练习引入到C语言课程的教学中,让学生较好地掌握了基础知识,同时实践动手能力得到了锻炼,培养了学生的团队协作能力。实践证明,通过对教学方法进行改革与探讨,可以大幅度提高教学效果,受到学生的普遍欢迎。
  参考文献:
  [1]伍鹏. 浅析C语言初学者应注意的几个问题[J]. 电脑知识与技术. 2011(12): 9123-9125.
  [2]伍鹏, 谢凯. 基于测试驱动开发的C语言教学研究[J]. 软件. 2012(05): 103-104.
  [3] 谭浩强. C语言程序设计(第四版)[M]. 北京:清华大学出版社. 2010.03.
  作者简介:
  伍鹏(1978-),男,硕士,讲师,现主要从事计算机应用方面的教学及研究工作。
  杜红(1964-),女,硕士,副教授,现主要从事计算机应用方面的教学及研究工作。
  谢凯(1975-),男,博士,教授,主要研究方向是图像处理与三维可视化。
  基金项目:
  本文系长江大学重点教学研究项目(JY2012009)
其他文献
目的 探讨RAS相关区域家族1A基因(RASSF1A)甲基化对预测行肝细胞癌手术切除术后患者预后的价值.方法 纳入260例行手术切除的肝细胞癌患者,留取其肝细胞癌组织和距病变外缘2 cm处的癌旁组织,并收集其临床病理资料.采用甲基化特异性PCR方法检测肝细胞癌组织和配对的癌旁组织中RASSF1A的甲基化状态.采用卡方检验分析RASSF1A甲基化的表达率及其与临床病理特征的关系.采用Log-rank
目的 探讨以动态增强磁共振(DCE-MRI)参数评价抗血管生成药物靶向治疗肿瘤早期效果的可行性及价值.方法 将人结肠癌HT-29细胞悬液接种于20只BALB/C-nu裸鼠右后肢皮下.将裸鼠均分为实验组和对照组,每组均为10只,实验组腹腔注射贝伐单克隆抗体,对照组注射等量的0.9%氯化钠溶液.分别于给药前和给药后1、24、48 h对实验动物行DCE-MRI扫描,分析传输常数、回流常量、血管外细胞外容
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
期刊
新一代地理信息系统要求矢量、影像和DEM数据集成化管理。本文提出了一种基于面向对象思想的矢量、影像和DEM三库集成的空间数据模型 ,讨论了集成化空间数据库管理系统的实现方式。该空间数据库管理系统已作为GIS软件GeoStar的核心 ,被用于中国的空间数据基础设施建设 ,管理国家级、省级和市级的多数据源、多比例尺的空间数据 ,被认为是一种高效可行的方案
在计算机高速发展的今天,数字化的威力与迷人的魅惑,使人们目不暇接。计算机各种软、硬件技术不断革新,给人类带来了一个全新的时代。真实的模拟、逼真的色彩和高精度的输出,计算
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
期刊
【摘 要】LabVIEW是一个使用图形符号来编写程序的编程环境。基于图形化编程语言的LabVIEW可以高效、快速地编写出相应的应用程序。本文就是采用LabVIEW平台,编程实现了数据采集、实时显示以及数据存储等功能。  【关键词】虚拟仪器 LabVIEW 多路数据采集 Modbus ASCII协议  一、LabVIEW概述  虚拟仪器是当前测控领域的技术热点,它代表了未来仪器技术的发展方向。  “
目的探讨无法重建血供的足底、手掌皮肤通过皮瓣预制回植和原位一期植在游离筋膜或肌肉上,观察其术后临床效果。方法自2009年1月-2014年3月对完全离体或借少许组织与肢体相连的足底及手掌撕脱皮肤,经清创后在股前外侧以旋股外侧动脉穿支点和小腿外侧腓动脉穿支点为中心去除相应形状表皮,植在此处,加压包扎,成活后再以皮瓣为载体回植到足底和手掌部17例。术后对其颜色、质地、有无破溃发生、感觉等情况进行了随访。
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
期刊
目的 观察纳米金联合5-氟尿嘧啶(5-Fu)对裸鼠H22肝癌血管及肿瘤生长的影响.方法 6周龄BALB/C裸鼠21只,从右腋皮下注入H22肝癌细胞,肿瘤形成直径7~8mm大小,随机分3组.5-Fu单药组从肿瘤周围及瘤内注入5-Fu溶液0.2ml(浓度为1.25 g/L);联合组则增加注射纳米金(浓度为500nmoL/L)溶液0.2ml;对照组用等量生理盐水处理,连续用药7d.处死裸鼠,测量肿瘤体积