刘晋英
摘 要: 要让学生学好C语言,应该从思想上让学生有正确认识,进而打好基础,掌握必要的算法,勤于上机实践,从计算机的处理方式角度出发写程序,这样循序渐进,注意方法,终会收获成功。
关键词: C语言 保留字 语法 算法 上机实践
《C语言程序设计》作为一门专业基础课,在大中专及职业教育中广泛开展。一些同学一拿到书后看到的不是长篇大论的讲解,就是英文和数字写成的代码,顿时觉得C语言很难学。那么,究竟如何才能够把C语言教好,而且让学生学懂、学好呢?
一、对C语言有正确的认识
有些同学认为程序设计语言要用到很多英语,而自己英语本来就不好,学不好语言课。其实,C语言以接近英语国家的自然语言和数学语言作为语言的表达形式,英语学得好的人自然更容易入门,但是,C语言中用到的保留字(关键字)其实只有32个,对于初学者而言常用的只有10个左右,且大都很简单,如int,if,for等,容易记忆和书写,基本不用顾虑英语不好而造成的学习困难。
二、C语言学习要注重“语法”
即:C语言所写成的程序是如何构成的。其中包含标识符、常量、变量、运算符、表达式、函数定义、语句构成、预处理命令等。这些知识点零散而繁多,除了反复强调它们的重要性外,更重要的是要设置合理的上机实验,把这些知识点融入到上机过程中,让学生不仅是理解、记住这些知识点,更知道如何运用,把它们跟自己写的程序结合起来。
三、正确理解和掌握合适的算法
上述都是C语言的基础,有了这些知识能否写出好的程序呢?答案是否定的,就如同给你足够的钢筋水泥,不见得就能盖起高楼大厦一样的道理。著名的计算机科学家沃思提出一个公式:算法+数据结构=程序。这里的算法广义来说就是解决一个问题的方法和步骤。这个方法和步骤需要用能够让计算机理解的格式书写,这就是计算机语言,如C语言。也就是说在教C语言的同时,还要让它能够解决实际问题,也就是让学生了解一些简单的算法,这无疑增加了学习困难。在教学中一定要把握好算法的难易程度,以学生的实际水平为出发点,切实选择一些学生易懂、会用的算法,让学生把更多的精力放在对C语言本身的学习上。在涉及的算法中,要尽量把算法本身要做什么描述清楚,而不是用专业的数学名称描述。如:“输出所有的水仙花数”,一些学生可能根本不知道什么是水仙花数,如果直接把这个问题描述为“求所有的三位数中各位数字的立方和等于该数本身的那些数”,学生觉得更直接和形象,就避免了学习C语言时难上加难。
四、分析程序与上机实践的密切联系
为了帮助学生更快更好地掌握C语言中的知识点,选择合适的程序作为上机实验的案例显得尤为重要。首先是每个案例不宜过长,太多的语句会让初学者畏惧,并容易忽略部分语句。其次是案例要与每个知识点密切结合,且在一个案例中不要包含太多知识点。案例的选择尽量有一定的延续性,这样会让学生觉得学的知识是连贯、系统的。教学过程严格按照从简到难、循序渐进的步骤,以免因一时抛出太难问题而挫伤学生的学习积极性。刚开始写程序时,应该给出足够多的参考,也就是我们熟知的,模仿是最好的学习。
五、摸透计算机的本性
要想尽快掌握C语言就必须掌握计算机的特点。计算机在问题的处理方式上要求全面,把所有的可能性都告诉它。人可以根据习惯忽略一些东西,但计算机不行。如求解一元二次方程,通常我们都默认a不等于0,甚至把b2-4ac也默认为大于或者等于0。这是我们思维的习惯,认为方程既然有解,就是实数解,写程序时忽略了必要条件。但是计算机不行,它不会思考,只会严格按照人的意志执行,如果忽略了条件就会造成计算机无所适从,甚至崩溃、报错,造成程序不成功,影响学习C语言的决心。
总之,C语言的学习不是一蹴而就的,但不是高不可攀、遥不可及,只要坚定信念,采用正确的学习方法,就一定可以学有所获,学有所成。