浅谈C语言课堂上的几个难点的讲解方法

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:intint
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:C语言程序设计作为高校学生的第一门编程语言,其中的循环结构循环体的编写、函数参数传递、函数递归等几处的学习是同学们疑问较多的地方。针对这些问题,根据几年课堂教学的尝试,分别找到一些效果较好的讲解方式,与大家简单交流。
  关键词:C语言;循环;参数传递;函数递归
  中图分类号:G642文献标识码:A文章编号:1009-3044(2012)27-6543-03
  Discusses Several Difficulties’Teaching Method in C Language Course
  SHI Hong, ZHANG Jian-ming
  (Shenzhen Polytechnic, Shenzhen 518055, China)
  Abstract: C language is the first programming language in many Colleges and Universities, there are several difficulties such as loop structure, passing function parameters, recursive function. this article give some teaching method in the C language course, hope it’s useful.
  Key words: C language; loop structure; passing function parameters; recursive function
  C语言是很多高校程序设计起步课程,是很多同学的第一门编程课程。在学习的过程中,同学们经常会在循环结构循环体代码的编写、函数参数传递、函数递归等几处遇到门坎。
  根据多年程序设计课程的教学实践,针对以上几处难点进行反复讲解、体会、总结,找到了一些有效的方法,使同学们能更容易理解这几个难点知识,之后选用一系列适当的的例题进行练习,便能使学生通过自己的思维推理,更熟练的掌握和运用这些知识点编写程序,同时体会到编程的奇妙之处,从而激发学习兴趣,提高学习效率。
   1从已知方法寻找循环体思路
  C语言程序的三大结构是顺序结构、选择结构、循环结构,前两者思路都比较容易建立,但循环结构就会在思路上遇到阻碍,往往是循环变量容易确定,但随着循环变量的改变,循环体应该怎样表达,这些语句跟循环变量是怎样的关系,就比较难于确定。
  在多年的课堂教授中,发现引导学生从自己已经掌握的知识入手,寻找建立思路,对初学者来讲是一种有效而且可靠的方法。下面就以求1+2+3+…+100的值为例来进行求解方法的介绍。
  第一步,要求学生利用已有的知识,提出解决该问题的方法。学生一般首先会提出数学中学到的求和公式,可以写出代码,但不是运用循环结构;接着可以提问学生:“有没有别的方法?不用公式就可以解决?”来引导学生扩展思路。抛开公式,能够得到的就是最原始的累加的办法:即从1到100进行1+2=3;3+3=6;6+4=10;10+5=15;15+6=21;…;
  第二步,引导学生从上面的思路里寻找规律,会发现需要将所有从1到100的数字累加,所有式子都可以写成:“前面所有数字的和”+“下一个数字”=“新的和”,而“新的和”又是下一个“前面所有数字的和”;
  第三步,整理第二步得到的式子:定义“前面所有数字的和”为sum,“下一个数字”为i,“新的和”为nextsum,于是可以得到代码为:sum+i=nextsum; sum=nextsum; i++;循环是从1到100,所以整个循环可以写成:for(i=1;i<=100;){sum+i=nextsum;sum=nextsum;i++;}
  这样,循环就写成了。这种建立思路的过程非常自然,容易使学生找到入手点,不至于无所适从,从而平滑过渡该难点,继续保持C语言的学习热情。
  之后,可以多做几个练习加强该方法的练习,如:求n!;Jack学习钢琴,每周上一次课,学费从50元开始每次递增5元,将第1周到第10周的学费分别打印出来。
   2多媒体动画法讲解函数参数传递
  函数参数的值传递和地址传递总是让初学者迷惑,使用动画法可以让大家了解它的本质。动画法是随着代码的执行过程,画
  图4
  以此类推,最终可了解其解决过程。
  讲过这个过程之后,同学们往往需要再多看该动画几次,便能深刻领会其要领,效果很好。类似方法还可以很好的用于理解指针和变量相关概念和过程。
  以上是在C语言讲解过程中遇到的几个难点问题的解决方案。通过上述讲授方式,可以使学生更容易建立编程思想、理解C语言代码,给后续独立思考和深度理解打下良好的基础,从而可以对已学内容的延伸和举一反三,更好地理解理论知识而达到灵活运用的目的。
  [1]马宪敏,于延. C语言中循环结构的教学设计探讨[J].计算机教育,2011(5):87-90.
  [2]赵帅锋,胡绍海.从婴幼儿的语言学习看C语言的教学方法[J].计算机教育,2011(8):85-87.
  [3]谭浩强.C程序设计[M].3版.北京:清华大学出版社,2005:1-3.
其他文献
仔猪母源性腹泻主要原因是母源抗体不足、母猪奶水不充足、奶水的有效营养含量不足、奶水中含有致病因子和毒素。预防措施主要为合理调配饲料、排除奶水中致病因子和毒素、净
澳大利亚于近日在《联邦法律公报》公布了关于禁止在婴儿奶嘴和固齿牙胶产品中使用双酚A(BPA)的禁令,该禁令已于2012年1月1日生效。
随着我国社会经济的不断发展,重工业的发展进行的如火如荼,因此,对于石油化工企业的要求与日俱增。被称为国家发展的"黑色血液"的石油在开采,加工的过程中同样有着严格的防火要
我国目前实行国家、地方、学校三级课程管理体制,以增强课程对地方、学校及学生的适应性。地方课程是国家课程的有益补充,得到了各地教育部门的重视。在地方课程教材的研发中
随着我国经济社会的快速发展,人们对水产品的需求日益增加,水产养殖业的面积不断扩大,人们对水产品的质量要求也越来越高。伴随着渔业的快速发展,涉及水产品安全的诸多事件频
网络教育是国内外教育发展的新方向,资源共享是提高网络教育质量、降低教育成本的有效途径。但由于没有统一的教育知识表示方法,学习资源在各学习系统间难以实现共享。该文以“
手机发展到今天经历过几次革命?一些新技术名词你又知不知道呢?使用手机这么多年,不少朋友对此依然是一窍不通,有鉴于此,现将一些手机中经常见到的技术常识总结到一些,其中有旧有新
该文基于多媒体技术在课堂教学中的应用过程的基础上,详细阐述了多媒体教学技术为课堂教学带来的激发学生学习兴趣、简单化知识点难度等优点和老师对多媒体技术使用不当和过
目的 对慢性胃溃疡患者进行针对性护理的实施方案及临床效果进行观察分析。方法 选取2011年1月-2013年12月慢性胃溃疡患者共计70例,随机将其分为对照组和观察组,每组患者为35