C 教学方法探索

来源 :职业·中旬 | 被引量 : 0次 | 上传用户:jiangzhaomaomao
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  《C 语言程序设计》是高职计算机专业的一门专业基础必修课。C 蕴含了程序设计的基本思想,囊括了程序设计的基本概念,所以是计算机专业的一门基础课程。高等院校开设C 语言程序设计的目的是让学生掌握程序设计的基本方法,逐步形成正确的程序设计思想,同时还能够熟练地使用C 进行程序设计和调试,为其他程序设计课程的学习和应用打下基础。
  笔者通过长期的教学实践发现,学生普遍认为C 枯燥难学、概念复杂、容易出错,由此产生了畏学、厌学情绪,严重影响了课程的进一步学习。为了解决学生面临的这一系列问题,笔者针对该课程的自身特点,结合各种教学方法以及教学实例,对如何激发学生的学习兴趣、刺激学生的求知欲,从而提高课程的教学质量、增强教学效果等方面进行了深入地探讨。
  
  一、让学生明确学习目的,激发学生的学习兴趣
  
  学习兴趣就是学生在心理上对学习活动产生爱好、追求和向往的倾向,是推动学生积极主动学习的直接动力。学生只有对所学课程有浓厚的兴趣,才能积极主动和富有创造性地去完成学习任务。可见,学生的学习兴趣直接关系到教学效果的好坏。那么,教学中应如何激发学生的学习兴趣呢?
  1.明确学习C 的重要性
  学习的重要性也就是这门课程的有用性。在社会竞争日益激烈的今天,学生的学习更看重的是实用性,是课程学习对以后的工作和竞争所起到的作用。当学生深刻地领会到课程学习的重要性之后,对课程的学习兴趣也就油然而生了。
  (1)目前,市场对软件工程师以及熟练掌握计算机程序设计的其他专业复合型人才的需求缺口很大。C 作为一种通用的程序设计语言,广泛地应用于软件设计和开发当中。熟练掌握C 程序设计语言,必然会成为计算机专业学生在未来就业竞争中的一个重要筹码。
  (2)C 是许多其它商业软件的开发工具。例如,当今世界上最流行的工程制图软件包AUTOCAD就是用C 开发的。另外,大家所熟知的UNIX操作系统也完全是由C 编写的。
  (3)C 是其它面向对象语言以及网络编程的基础。面向对象编程语言,如VB、VC 等,虽然摆脱了面向过程语言的许多细节,使设计程序轻松很多,但用户对其对象化的事件仍需编写代码来驱动实现。这些代码里面仍包含结构化程序设计的顺序、选择、循环三种基本结构。因此,C 的编程思想是面向对象语言程序设计的理论基础。另外,随着Web网页技术的不断普及和发展,人们制作漂亮的、个性化的Web网页并不是件难事。问题在于深层次的网络技术开发仍然必须掌握一定的编程工具,如CGI程序、ASP脚本语言、JAVASCRIPT等等。实际上,这些流行的网络编程语言很多都混合了C 的语法,这类语言在数据、运算符、函数的调用、程序语句的书写、循环的控制上都极为相似。
  (4)C 编程有助于训练和培养计算机思维。C 的学习不仅是一门纯粹的技术或技能,而且是一种思维训练的工具,有助于锻炼人们的思维。这就像数学对人的思维所起作用一样,使人的思维更精确、更细致。当学生对该门课程的重要性有一个深刻认识的时候,自然会把C 的学习摆在一个较重要的位置加以重视。这是培养学生兴趣的一个重要方面。
  2.展示C 语言程序设计的魅力,刺激学生的求知欲
  将抽象的语言形象化,使枯燥的机械性的学习过程转化为一种趣味性的认知过程,将C 语言所拥有的魅力展现在学生面前,让学生感受到C 学习其实也是一项其乐无穷的事情。
  (1)把趣味性问题作为教学实例。C 语言的学习过程是一个相当抽象的过程,各种各样的语句都以符号的形式展现在面前,学生难免会对此产生厌倦。此时,可以在课堂的案例中加入小游戏及图形设计内容,以趣味性的实例作为教学的例子。
  在讲解一个新的知识体系前,运用即将学到的知识设计一个吸引学生的小游戏或动画。课前,教师首先展示动画,侧面引导学生,让他们有“只要我学会了这部分知识也能自己做出来”的信心,这样会大大提高学生的学习热情。
  例如,在讲解“选择与循环结构”之前,笔者首先在课堂上向学生展示了一个“猜数游戏”,让学生对此产生了兴趣,提高了上机时的积极性。当他们学习了if语句后,就可以编出程序的判断部分,学习了循环语句后,就可完成一次猜数字的过程。而学习了循环嵌套后,则可实现连续猜数字,成为一个完整的游戏。从具体实例切入,由浅入深、循序渐进的教学模式,能够很好地调动学生学习的主动性,培养他们对课程学习的兴趣。
  (2)选择经典的数学问题作为课堂案例。正如长篇大论的讲道理往往不如巧妙的使用一个典故或者一句名言更具说服力一样,经典的数学问题作为课堂案例会比一般的练习题更能引起学生兴趣。例如,“百钱百鸡”问题是用C 程序解决数学方程运算问题的一个典型实例,用到了程序中典型的算法——“穷举法”。
  将这样的经典数学问题作实例,可以使学生既学习算法,又体会到运用C 编程解决实际问题的乐趣。又如演示数学中一元二次方程的求解程序,同样如此。用所学的知识解决现实问题,使学生能够感受到理论在实际中的应用,从而进一步激发他们向更高、更远的目标奋进。实践表明,这些学以致用的实例能大大激发学生对C 学习热情。因此,在学习过程中,要让学生体验到成功的欢乐,获得成就感,强化学生的求知欲望从而使学生学习C 的兴趣和热情能够持久保持。
  
  二、多样化的教学方法
  
  1.启发式教学法
  程序设计方法是多种多样的,大多数问题都不只有一个解法。因此,在教学过程中,教师不应对学生进行刻意地限制,而要鼓励学生按照自己对问题的理解采用自己认为合适的方法进行处理。教师则对各种方法进行总结,并对各种方法的优缺点进行讲解。通过这种引导启发式的教学方法,可以调动学生的积极性。例如,1 2 3 … 100=?可以采用while语句,也可以采用do…while语句,还可以采用for语句。教师可以引导学生进行思考,让他们采用不同的语句来实现。这样不仅能够调动学生的主观能动性,还能让他们在不知不觉中巩固了所学的知识,加深了对本质的认识。
  2.案例比较教学法
  结合课堂要求,选择恰当案例,采用多个案例演示比较,经过学生的讨论后,及时做出讲评,并再次讲授案例分析中所需要用到的理论知识和技能。通过对各种案例的比较,能够让学生深刻领会到不同的语句之间的区别和联系,有助于他们更准确地进行运用。例如,在学习函数这一章时,为了说明函数调用时参数传递的方式,设计如下案例供学生讨论。
  案例:交换主函数两个变量的值,要求:main函数中两个变量,采用函数调用实现变量交换后,然后输出交换后结果,用swap函数实现。
  学生经过分析讨论,得到以下四种方法:
  程序1:
  swap(intx,inty)
  {inttemp;
  temp=x;x=y;y=temp;}
  voidmain()
  {inta=10,b=20;
  swap(a,b);
  cout<  }
  这个程序中,实参向形参传递数据的方式是值传递。当调用swap时,将实参a和b的值复制给形参x和y,并在swap函数的内部完成了x和y的交换。由于形参x、y和实参a、b各自拥有自己的内存单元,a和b并没有完成交换。
  程序2:
  swap(int
其他文献
痢疾是一种肠道传染病。有细菌性痢疾和阿米巴痢疾两种。中医文献《黄帝内经》称为“肠澼”。《金匮要略》称为“下利”。《诸病源候论》分赤白痢、血痢、脓血痢、热痢等。《
口腔溃疡狭义上指的是以溃疡为突出症状的一种疾病,如复发性阿弗他溃疡(又称复发性口疮);广义上指的是任何疾病引起的以溃疡为表现的一种症状,如结核、鳞癌等都可以表现为溃
当前,我国正处于一个剧烈变革的时代,随着生活节奏的加快,竞争的日趋激烈,人们所面对的生活压力也日益加大,加之人们对此剧大的转变尚不能完全适应,缺乏足够的心理承受能力,
【正】在机床加工中,无论数控车床还是普通车床,车削圆锥体零件时,都会出现双曲线形状的质量误差而导致精度要求高的零件不符合技术要求,出现废品的现象。笔者在此结合产生双
脑梗塞可并发多种心电图改变,国内外已有报道。本文报道我院1995年3月-1997年4月间259例经颅脑CT扫描并做心电图检查的脑梗塞患者的心电图改变。以比较脑梗塞部位与心电图改
【正】高等学校学生政治辅导员是学生思想政治工作的组织者和指导者,是高等学校教师队伍的重要组成部分。根据多年从事学生思想教育与管理工作的体会,笔者认
1 心电资料 患者女,38岁。反复心动过速史6年,每年发作2-3次。临床诊断:阵发性室上性心动过速。心室率176次/min律齐,在QRS波后可见逆行P′波,R-P′】P′-R,R-P′】1/2(R-R)
【正】进入21世纪,高职院校图书馆的发展面临转型。转型时期的图书馆需要什么样的职业精神、如何发挥职业精神成为每个高职院校图书馆员面临的新课题。一、图书馆职业精神的
心律失常是心肌梗死(MI)急性期最常见的并发症,也是导致急性期死亡的主要原因之一。自我院CCU病房建立后,对急性心肌梗死(AMI)患者进行持续心电监护,及早发现各种类型的心律
人群中约有8%~11%的人患有胆结石。18~65岁的成年男性患病率为6.7%,女性患病率为14.6%。目前对于胆结石的成因及易患因素,国内外已有较多的研究报道,除高脂血症、糖尿病外,年龄、性