C语言课程的教学初探

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:yesterday23
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:C语言作为一种重要的编程工具,越来越受到计算机专业基础教育的重视。该文根据《C语言程序设计》课程的教学实践,分析了当前程序设计课程教学中存在的若干问题,针对性的提出了几点教学建议,让学生明确学习目的,保持学习信心,教师采用有效的教学方法,达到理想的教学效果。
  关键词:C语言;程序设计;上机实践
  中图分类号:G642 文献标识码:A 文章编号:1009-3044(2009)15-3967-02
  
  Exploration on Teaching in the C Language Programming
  HUANG Yong-jie1, HU Shun-yi2
  (Computer and Information Engineering College, Anyang Normal University, Anyang 455002, China)
  Abstract: C language programming are more and more lay store by basic education professional as an important tool for the computer. In this paper, based on "C Programming Language" teaching practices, analyses some issues in the current teaching program design, poses some advices to the question of teaching to allow students be clear about the goal and maintain the confidence in the studying, so that teachers adopt effective teaching methods to achieve the desired benefits.
  Key words: C Language; Programming; The Practices on Computer
  
  1 引言
  
  C语言程序设计是过程性程序设计语言,它的发展贯穿于计算机发展的历程,它蕴含了程序设计的基本思想,囊括了程序设计的基本概念,同时,它又是一门十分优秀而且重要的计算机语言,已成为当今世界上应用最广泛的计算机语言。目前最著名、最有影响、应用最广泛的Windows、Linux和UNIX三个操作系统都是用C语言编写的。从狭义而言几乎所有的系统软件和应用软件都能用C语言编写。因此很多高校计算机专业和大部分的理工类专业都开设了。大学生学会运用C语言编写程序解决实际问题,既有利于提高学生的思维能力,也有利于相关课程的学习。然而尽管教师和学生都付出了努力,教学效果却总是不太理想。
  
  2 存在的问题
  
  笔者通过多年的教学研究,发现了一些问题:1) 学生不知道为什么要学习C语言程序设计,很多教师也没有让学生清楚的知道学习C语言的目的;2) 学生对学习C的信心不足,有一部分学生未开始学习就已放弃;3) 由于教师要在有限课时内完成教学任务,课堂教学基本上仍然是教师满堂灌,师生互动性差,学生学习的主动性未能调动起来;4)现有实验大多注重语句、语法、流程、结构等概念性的基础知识,没有把编程解题思路、算法和程序测试调试等运用知识放在首位,对学生分析问题和解决问题的能力训练不够。
  
  3 方法和对策
  
  3.1 明确目的,激发兴趣
  首先,教师应该让学生明确C语言课程在计算机专业课程中的地位,让学生清楚C语言的作用,从而激发学生的学习兴趣。程序设计语言的学习对学生来说很陌生,从未接触过,所以他们会认为计算机语言是很难于理解,很难学的,所以有许多人对计算机语言的学习缺乏信心。在这个时候,任课教师应该及时告诉大家,许多软件开发公司都采用C语言来编写应用软件和系统软件,比如现在的华为公司,对于就业形势不容乐观的现在,掌握一门语言可以增加将来就业时的筹码。告诉他们之前学院毕业的师兄师姐都哪些现在在软件公司工作,编程非常厉害,从而激发学生的学习积极性。教师可以在上课过程中讲述当今IT行业的分类及发展的历程、其中出现的重要人物,比如可以讲讲微软公司的创始人比尔.盖茨的创业史。教师在讲授每一节课以前,必须清楚、明白这堂课的目的要求,通过形象生动地操作或有目的的激趣提问,诱发学生的求知欲;也可根据内容讲明教材在程序设计当中的作用和意义,以及它在知识体系中的地位,引起学生对知识的重视,并形成学习的动机。
  3.2 因势利导 增强信心
  在开C语言课程之前,很多同学都没有接触过编程,甚至许多来自农村的同学都没有接触过计算机。为了消除程序语言对学生的神秘性,教师可在课堂上当场编写一些小程序,并当场上机调试和运行。在接下来的上机操作课中,让学生在自己的指导下完成了程序的输入、调试过程,并运行得到了程序中设定的操作,使他们产生兴奋感。此时趁势告诉他们说,像这样的程序,只要大家认真学习,以后你们自己也能设计出来。这样,学生消除了对程序设计的神秘感,产生了兴趣,并增强了学好程序设计的信心。
  3.3 灵活运用教法 激发学习潜能
  为培养学生逻辑思维和创新能力,在教学过程中,通过各种教学方式和手段激发学生的学习欲望,使其积极投入到学习活动中,积极思维,发现问题,提出问题,并逐步解决问题。例如,在讲解程序设计举例时,不是简单地给出程序清单,而是从分析问题入手,继而找出解决问题的方法,再给出算法,最后编写出完整的程序,编译、链接、运行到测试与单步调试的整个过程,特别是调试中增加输出,变难为易,环环紧扣。而在这一过程中,较关键的是每一步都采用与学生一起探讨的方式,让学生在启发下思考,在思考中解决问题,从而掌握独立分析问题、解决问题的方法。为培养学生综合应用知识的能力,通过对完整的项目的系统分析,培养学生良好的编程习惯,善于获取他人经验的能力以及掌握综合运用所学知识的能力,从而真正提高编程水平。充分合理地利用多媒体课件,可以达到事半功倍的效果:课件上要合理选择教学内容,制作要突出中心,避免从书本上摘抄大量文字或图片。课件中可适当加入Flash动画等,吸引学生注意力,让学生对课件上的内容产生兴趣,有利于知识的掌握。
  3.4 合理组织教学,突出重难点
  由于C语言牵涉到的概念比较复杂,规则繁多,而学习C语言的课时十分有限,因此教师在教学过程中应该结合学生学习实际和以往的教学经验,对课程内容进行科学分析,确立课程学习上的重点、难点。对于重点内容,对于简单的问题或C语言语法规则规定的内容,教师则可以采用引导式的教学方法,通过特定的题目和练习,使学生掌握这些知识点。在教学过程中,应多引用一些针对性较强的小程序引导学生理解语法规则和编程习惯。比如教材中一道例题:请将小写字母转换成大写字母。教师可以先引导学生理解ASCII码在C语言中的作用,通过查ASCII表可知‘a’的ASCII码为97,而‘A’为65,‘b’为98,‘B’为66。从表中可以看到每一个小写字母比它相应的大写字母的ASCII码大32。C语言允许字符数据与整数直接进行算术运算,即‘A’ 32会得到整数97,‘a’-32会得到整数65,知道了大写和小写字母的ASCII值相差32,那么这道题目的编程思想也就迎刃而解了。对于难点和重点,像循环语句、函数调用、指针等内容,教师应突出其对整个课程体系内容掌握的重要性,以重点内容为突破口,带动相关知识点的掌握。运用现代教学手段,借助于演示、实例分析等功能,简化教学过程,突出重点、突破难点,达到化繁为简、化难为易、化抽象为具体的目的。避免了学生因无法深入知难而退、甚至丧失学习信心的现象,从而唤起学生学习的兴趣,提高学生创新激情。在开始学习指针的概念时,为了更好地理解“间接存取”的概念,就借用了这样的比喻:将A房间的钥匙放在B房间里,若要取A房间里的物品,就需要先打开B房间,取出A钥匙,再打开A房间,取出A房间的物品,这就是“间接存取”。借助这种形象化的比喻,使学生很快就能理解指针的概念。比如在C语言中的自增自减运算符,其作用是使变量的值加1或减1,有 i,--i,i ,i--,对于前两者,自加自减符号在变量之前,可以理解为前自加前自减,变量i在当前就要变化(即自加一次或自减一次);对于后两者,可以理解为后自加后自减,变量i在下一次出现时变化(即自加一次或自减一次),那么在分析时把这4种情况放在一起进行讲解,并引用几个例题加以说明,学生就能很好地掌握这个概念。
  3.5 强调实践环节,加强创新能力培养
  C语言程序设计是一门实践性很强的课程,通过上机操作才能使学生真正理解、消化课堂上的理论知识,因此要以应用为目的,注重培养应用能力,大力加强实践环节,激励学生创新意识。教学中坚持指导与辅导、投影演示与上机操作相结合。具体措施如下:
  1) 要合理的安排上机实验课时与理论教学课时的比例(至少为1:1);使教学实验与理论教学协调同步,特别是时间、内容上要衔接好,讲完课要及时上机并保证上机效果。增加实验教学的学时数,是提高C语言教学效果的一个前提保障,没有充足的学时数,其他的改革措施无从谈起。
  2) 要明确学生上机目的和步骤,这要求教师课前写好含有实例和习题实习指导书,指导书的内容要尽量紧扣教材,学生实习结束要上交实习报告由教师批阅。实验教学的目的:一是让学生掌握基本的程序设计算法,能够编程实现我们课后练习的一些题目,当然这是对学生的最基本要求,也是最低要求;二是让学生真正掌握C语言这样的一个软件开发的工具,为学生以后走向工作岗位,奠定良好的基础。因为对于计算机专业的学生,通过课程设计或者综合性实验能够用C语言开发一个小的软件,对于他们来讲,会有一种成就感,能够给他们学习的信心和兴趣,或许一名优秀的软件设计人员会因此而产生。
  3) 实验分组,老师跟踪答疑。学生单独完成实验易导致基础偏差的学生动作慢,不容易按时完成任务,跟不上进度,而基础较好的学生实验时间过剩。对此,教师可以根据学生实际情况,按组划分,每组安排一个基础好的学生负责。通过这种协作学习的方式,学生为了达到小组学习目标,个体之间可以采用讨论的形式对问题进行充分论证,以期获得达到学习目标的最佳途径。教师应随时解答学生的问题,及时了解学生上机操作的情况。
  4) 举一反三,加强综合性实践,开展第二课堂活动。C语言教材中的课后习题非常丰富,许多题目的针对性也很强,教师应该对其进行归纳、整理和分类。针对同一类问题时不要逐题练习,应该在重点练习典型题目的基础上,拓展学生思路,引导学生归纳和总结求解一类间题的基本算法,达到举一反三的效果。综合性练习可以巩固所学知识。课程结束后,布置一项软件开发课题,该课题力求既结合实际,又能涵盖课程教学的要求,由学生自学和开发。学期结束前完成该项目,其成绩记入综合设计分。通过课题的开发过程,促使学生将所学的知识融会贯通。第二课堂活动强调对学生综合应用能力和创新能力的培养。我们每年进行一次院内程序设计大赛,选拔优秀的同学参加省ACM程序设计大赛,老师给予全程指导。
  3.6 改善考核制度
  多年来,许多高校对C语言的考试以笔试为主,其它考试为辅,这样学生实际操作能力差,考试及格率偏低,而程序设计使一门实践性非常强的课程,根据这种情况,我们改进了考试方法,开发了C语言上机考试系统,以笔试和机试相结合的考试方式,笔试考察学生对基础知识、基本概念的掌握程度,上机考试主要考核学生熟练调试程序的能力,成绩评定也由过去的“平时成绩 笔试成绩”改为“平时 笔试成绩 机试成绩 实验成绩”,比例分别为2:3:3:2,同时为了正确反映教学质量,采取考教分离,集体阅卷的方式,这种考核方法,不但能更客观地反映学生的学习情况,同时也能促进学生学习,起到很好的教学效果。
  
  4 结束语
  
  程序设计教学的目的,不仅要使学生掌握语言的基本规则,更要切实提高其编程解决实际问题的能力和实现算法的能力。在c程序设计的教育中,应以程序设计和实践为主,通过课程教学方式和方法的改变激发学生学习的兴趣,使学生不但掌握高级语言的知识,编程技术和基本算法,更重要的是掌握设计的思想和方法,具备利用计算机求解实际问题的基本能力,适应社会发展的需求。
  
  参考文献:
  [1] 谭浩强. C程序设计[M]. 3版. 北京:清华大学出版社,2005.
  [2] 方红萍,陈和平. C语言课程改革与实践[J]. 电气电子教学学报,2007(5):11-13.
  [3] 王江涛. 浅论C语言实验改革[J]. 电脑知识与技术,2008(33).
  [4] 何波玲,张亚辉.《C语言程序设计》课程的教改探索[J]. 长春金融高等专科学校学报,2008(3).
其他文献
摘 要:针对高中物理选择题的特点对鲍建生难度量化模型进行了修正。确定修正模型的可行性后,运用该模型对2014年至2018年江苏省高考物理选择题进行难度分析,获得了难度差异和来源。文章可为模拟试卷命题和日常高中物理教学提供参考。  关键词:高考题;试题难度;难度量化模型;试题分析  中图分类号:G633.7 文献标识码:A 文章编号:1003-6148(2019)11-0037-3  高考后一线
衣的变迁:穿在身上的历史  吴月辉    曾几何时,在中国人的衣柜里,蓝、黑、灰等几种颜色的衣服占据了绝对的“统治地位”。然而,随着改革开放,国门打开,中国人深埋几十年的爱美之心开始在服饰上得以释放。  随着中国经济不断对外开放,西方文化和港台时尚迅速进入中国,向年轻一代传递着最新的潮流信息。上世纪80年代初,银幕上的“红裙子”使得中国女性从单一刻板的服装样式中解放出来、开始追求符合女性自身特点的
本章采写/张伟、王红茹、许浩、杨兆清、杨天波、包锐、汪文学、张娟娟、夏一仁、唐诗、董显苹    70年,弹指一挥间。  长征,这个不朽的名字,镌刻在中国十多个省份的版图中,构成了独特的长征区域。然而它的意义早已超出这些,它诞生了一个永生的时代精神。    正是长征精神,让这个曾经极为贫瘠的区域,焕发新的生机。中部崛起、西部大开发号角吹遍,长征区域的近百个县、市迎来了前所未有的发展契机,形成了特有的
摘要:该文首先论述了旅游电子商务专业开设手机APP开发实训项目的重要性,然后设计了可供学生在课程实训中使用的景点自动导游APP的编程框架。经过课程教学实践,发现该实训项目完全可以达到让学生理解APP设计过程的教学目标。  关键词:工作过程;教学设计;景区APP  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)18-0141-03  1 课程概述  1.1 移动AP
摘 要:万有引力定律的发现过程蕴含着丰富的物理思维方法,文章以物理核心素养中的“科学思维”为导向,对人教版、粤教版、沪教版教材《万有引力定律》一章前半部分内容进行全面、细致的比较,为如何在《万有引力定律》一章有效培养学生的科学思维提供参考,也为后续针对该章节进行培养学生科学思维的教学设计打下理论基础。  关键词:科学思维;万有引力定律;教材对比  中图分类号:G633.7 文献标识码:A 文章
【摘 要】隶书在诸体中处于文字发展演变及笔法创变的枢纽地位,上溯于篆,下启真行草。隶书变于先秦,而烂漫于秦汉,至有清而复兴。于秦汉铭刻探究体式,于简帛寻求笔法,系统梳理秦汉,为今天的创作提供源泉,是为正路。  【关键词】书体流变;隶变;简帛;铭刻;笔法  【中图分类号】J292.1 【文献标志码】A 【文章编号】1005-6009(2016)56-0020-02  【作者简介】吴勇,南京林业大学(
摘 要:为帮助高中学生转变物理学习中的迷思概念,教师可通过高阶反思策略在“引发认知冲突”与“迷思概念转变”之间搭建桥梁,探索认知冲突产生后迷思概念转变成功发生所需的教学支持。高阶反思策略由诊断、聚焦、寻径、落实四个环节组成,它提供了有效的教学原则指导,使教学设计的得出有据可依,使教学原则的落地有章可循。   关键词:迷思概念;高阶反思策略;认知冲突;二阶诊断测试;知识创生平台  中图分类号:G6
蜘蛛大哥愁眉苦脸地走进小尾巴狼馄饨店。“怎么啦?”大尾巴兔子的观察最细致,一下子就发现了蜘蛛大哥的不对劲。  “今天是我最后一天上班了。”蜘蛛大哥痛苦地说,“我下岗了。”  “下岗?”大大尾巴兔子舒了一口气,他本来以为是多大的一件事,“原來只是下岗啊。”  “什么叫‘只是下岗’!”蜘蛛大哥说,“难道下岗是件不重要的事吗?”  “唉,重要当然也重要。不过,”大尾巴兔子说,“换个工作也是件好事呀。不要
今年9月以来,汇率问题成了一个国际性话题。“国际汇率战争”、“货币战争”之类的言辞抢占了许多国家主流媒体的重要位置。  就在此时,9月29日,美国众议院以348票赞成79票反对压倒性通过了《货币改革促进公平贸易法案》(Currency Reform for Fair Trade Act),要求对来自货币币值被低估的国家的产品征收惩罚性关税。根据这个法案,如果人民币不在近期内大幅度升值,美国很有可能
摘要:在日常工作中,我们经常要使用Excel录入大量的数据,如客户信息、学生成绩等。由于信息量大,在录入过程中,我们不可避免的会出现一些错误。如何快速、有效的检查、校验录入的信息是值得研究的。这里文章介绍两种轻松、高效的数据校验方法——公式审核法和语音校验法。  关键词:校验;公式;语音  中图分类号:TP317 文献标识码:A 文章编号:1009-3044(2009)15-4069-01