独立学院C语言等级考试教学探讨

时间:2022-09-22 10:30:48

独立学院C语言等级考试教学探讨

摘要:C语言是独立学院理工科非计算机专业学生在获取学士学位证书时必须参加等级考试的二级考试语种之一,历年考试通过率反映出,C语言的学习有一定难度,二级考试通过率普遍不高。如何使C语言教学能够更有效地让学生掌握要点,提高编程能力,顺利通过等级考试,这是一个很值得深思的问题。从独立学院学生的学习特点、C语言学习中存在的困难、C语言教学方法思考几个方面,依次对独立学院C语言等级考试教学进行了探讨,期望不断寻求更好的教学方法。

关键词:独立学院;C语言;学生学习特点;困难;教学方法

中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)25-7176-02

Independent Colleges C Language Teaching Test

LIU Li-juan

(Nanjing Normal University Taizhou College, Taizhou 225300, China)

Abstract: C language is one of the Language Tests which an independent non-computer science and engineering college students in obtaining bachelor's degree level certificates must participate in.Examination pass rates over the years reflect that, C language have a certain degree of difficulty, Secondary examination pass rate was generally not high. How to make the C language teaching more effective for students to grasp the main points to improve programming ability, successfully passed the test, this is a problem worthy of careful consideration. From characteristics of students in the independent College, C language learning difficulties, thinking of C language teaching methods several aspects, followed by the C language Teaching Test of independent Institute are discussed,expectations are constantly in search of better teaching methods.

Key words: Independent Institute; C language; student learning characteristics; difficulties; teaching methods

在计算机技术飞速发展的今天,各种计算机软件开发语言是计算机更新换代的一个重要条件,常见的有VB、C、C++、C#.NET等等。其中,C语言可移植性好,既具有高级语言的特点,又具有低级语言的许多特点,因此它属于一种中间语言一直广泛使用到今天。特别是在高校,《C语言程序设计》这门课一般面向初学程序设计的学生开设,掌握C语言的精髓,是学生学好其他后续专业课程的关键。对于独立学院要参加等级考试的学生来说,C语言学习要求更高、难度更大,因此要针对特殊环境下学生的特点不断改进教学方法以达到最终的教学目标。通过多年教学,现对独立学院C语言等级考试教学做如下几点探讨。

1 独立学院学生的学习特点

独立学院招收的本三批次学生,大多在学习能力、学习自主性方面还是稍差的,学习过程中,习惯于接受老师课本上基本知识点的讲解,对于补充提高的内容,比较难于掌握,加上课后几乎不问问题,自学能力差,不擅长复结,一旦有问题得不到及时解决,就会在后续学习过程中越积越多,从而导致整门课程学习的恶性循环,考试复习更是无从下手。

2 C语言学习中存在的困难

C语言学习中存在的困难主要体现在教学过程中,教学过程涉及到两个重要方面:教材内容和教学方法。就教材内容而言,C语言教学使用的是谭浩强编写的《C程序设计》。整本教材所包含的内容比较侧重于理论知识点的讲解,适当加上了一些实例分析,而不是一本侧重于培养学生编程能力的教材。书中包含的基本知识点很多,而且相对而言显得比较琐碎,但前后章节又彼此相辅相成,学生如果不花大量时间去记忆,根本掌握不了最基础的语法。

目前在C语言教学过程中,所使用的教学方法存在以下问题:

1)教学过程枯燥

有的老师在教学过程中使用多媒体课件PPT教学,但PPT上的内容跟书上的几乎一样,从课件上看不出任何重点、难点的标注,上课相当于加上稍许讲解从头到尾把书上内容读了一遍。学生本身就觉得书本上理论知识枯燥,如果教学过程安排不恰当,学生从心理上就会逐渐有排斥性,从而导致他们从一开始就没兴趣、不好好学的现象。

2)忽视教学方法的总结

事实证明,C语言中有很多学生容易混淆的知识点,特别是在学到后续章节例如函数的时候,学生编写函数调用程序往往会出现理不清思路、不知如何下手的状况,不清楚被调用函数和调用函数分别如何定义、如何编程,如果在授课过程中教师能够及时总结,学生理清了思路,就可以很顺利地去解决问题了。

3)忽视学生编程能力的提高

为了应付等级考试,有的老师一味追求题海战术,认为学生练习题目做得越多运用越熟练,但在熟练的同时,是否考虑到这样两个问题:有些学生一开始就做不下去反过来抄袭答案;使学生重复做同类型题目会浪费学生大量的时间。再加上老师如果不注重强调编程题算法的重要性,学生编程能力往往得不到提高。

4)不了解学生的掌握程度

教学过程是教和学的统一体,忽视任何一方整个教学效果都不会理想。因此在教学过程中,不仅要注重教师的教,也要注重学生的学。如果仅仅考虑如何教,教师就不能接收到来自学生的信息反馈,从而无法根据学生的学习情况及时改进教学方法,调整教学进度。而在很多授课过程中,仅仅只是教师的讲解,没有任何跟学生的提问互动思考等过程,或者课后跟学生也毫无交流。缺少了学这样一个巨大的信息反馈渠道,教学过程根本无法很好的完成。

3 C语言教学方法思考

3.1 教材总体把握

1)要掌握若干数据类型,包括char、int、float等基本数据类型和数组、结构体、共用体等构造数据类型,这是程序中最基本的数据存储方式。

2)掌握三种基本的程序结构:顺序、选择、循环。任何一个复杂的程序,都是由三种基本结构组成的。其中,循环是重点也是难点。

3)C语言使用函数来实现某个特定功能。

4)C语言提供了一个十分便利的工具――指针,它能直接指向内存空间单元,从而可以更加方便地操作变量,简化程序设计。

3.2 具体教学方法

1)重视理论基础

通过清晰的讲解让学生打下扎实的理论基础,在学生记忆知识点的同时利用典型题目,帮助学生灵活应用所学知识,及时巩固。

2)让初学者学会读程序

初学程序设计,不会编写程序代码属正常现象。带领学生从一开始多看程序,阅读的程序越多,解决不同问题的算法也就能够积累越多。读程序的最大好处是先学别人怎么写程序,有了一定积累再自己尝试去动手编写程序。在记忆算法的同时,可以发现很多问题归根到底可以使用同一方法解决,因此在阅读程序的过程中还要学会算法的归类。

3)注意教学方法的总结

在此对C语言中的两个难点函数的编写和指针分别作总结。

函数调用时,main函数的框架一般是变量定义、简单输入、函数调用、简单输出,而实现某个特定功能的函数要看成一个整体单独定义,其框架一般是变量定义、实现函数功能的处理语句、返回值语句。特别是对于递归函数的编写,可以遵循“找递归公式?写递归函数?补充main函数”的规则,这种方法对于学生理解“汉诺塔”问题相对容易些。对于嵌套函数,建议根据算法先写出要使用到的几个空函数框架,再逐个补全各函数语句。

对于指针这章,关键要抓住变量的入口地址,其中所对应的有单个变量的地址、数组入口地址、函数的入口地址。

指向数组的指针,可以定义一个指向数组入口地址的指针变量p,通过p++使指针指向数组的每一个元素,因此*p可代替数组的每一个元素,避免了使用下标法来引用元素。字符串的指针就是指向数组的指针的一个特例,特别要注意经常使用字符串结束标记‘\0’作为循环结束的判断条件。

指向函数的指针很简单,因为它始终指向函数的入口,可以在指针变量名前加*就可以代替函数名进行使用。一般使用指向函数的指针有这样一个特殊场合,一个函数有多个参数,多次调用此函数时,每次前几个参数相同,而最后一个参数不同,最后一个参数可以利用一个指向函数的指针来实现,每次使指针指向另外几个不同的函数。例如,在编写一个求定积分的通用函数时,下限、上限保持不变,而每次函数表达式不同,我们就可以用此方法来实现。

返回指针值的函数一般在函数被调用后,会返回一个指针,以便于主函数利用此指针进行其他操作,一般返回指针值的函数可用在查找信息的编程中。

指针数组和指向指针的指针,通常要联合起来使用,因为指向指针的指针为二级指针,必须通过一级指针才能与变量相互引用,而指针数组是一个很好的中介,它可以将若干一级指针聚集起来,指向若干个变量。这时,我们只要通过一个二级指针就可以很方便地指向指针数组的每一个元素,从而间接地指向每一个变量。

4)重视上机操作

一般上机课时间有限,因此建议课后让学生动手在纸上编写代码,上机课主要抓紧时间进行调试。老师要重点讲解编程题目的算法,提醒学生可以将大的程序分解成熟悉的小程序编写,再将小程序连接起来,上机大部分时间还是让学生自主完成程序的调试,这样有利于学生自我总结提高,掌握编程技巧。

3.3 信心教学

教师在平时的教学过程中,首先要给学生树立起学习的信心,激发他们的学习激情。多年来,C语言的教学都是以输出“HELLO WORLD”开始讲解程序设计语言的,该程序过于平淡,不能引起学生的学习兴趣。我们可以考虑演示一个事先编好的小游戏程序,从一开始吸引学生的注意力,激发其浓厚的学习兴趣。在学习过程中,要发挥学生的学习信心,可以采取诸如:编故事提高语言的趣味性、引用经典数学问题、让学生亲自参与等方法,让学生在不知不觉中即学到了知识,又活跃了课堂气氛。最终,通过等级考试的考核让学生实现其信心。

C语言的学习存在一定难度,对于独立学院的学生来说参加等级考试学习难度更大,因此在教学过程中,我们要不断研究采用合适的教学方法让学生产生学习兴趣,掌握学习方法、勤于做题、自主编程,最终顺利地通过等级考试。

参考文献:

[1] 王淑敬. 关于C语言教学的一点体会[J]. 计算机科学,2008.

[2] 赵妮, 熊高君. 激活课堂气氛,提升学习兴趣――谈C语言课堂教学方法[J].教育与教学研究,2008.12.

[3] 何岸. 论《C语言程序设计》课程的趣味教学[J]. 高等函授学报(自然科学版),2008.10.

[4] 刘清雪, 刘影. 独立学院计算机专业“C语言”课程教学与思考[J]. 华章,2008.9.

[5] 谭浩强. C程序设计[M].3版. 北京:清华大学出版社,2005.7.

上一篇:基于FLV格式的视频在PPT课件中的应用 下一篇:无线传感器网络节点自定位算法研究