关于c语言的程序设计,关于《C语言程序设计》教学的探讨

摘要:《C语言程序设计》作为一门流行的高级程序设计语言,在高职院校的教学中占有重要的地位。教师如何上好该课程,以及如何引导学生学好该课程,该文就这两个问题展开初步的探讨。

关键词:《C语言程序设计》课程;教与学;方法;探讨

中图分类号:G642文献标识码:A文章编号:1009-3044(2011)15-3610-02

《C语言程序设计》是目前世界上十分流行、使用最为广泛的高级程序设计语言,也是计算机软、硬件相关专业的基础课程;并且学生《C语言程序设计》能力的强弱,直接影响他们后续专业基础课和专业课的学习。该课程在计算机教学中的重要性是不言而喻的。

1 高职院校《C语言程序设计》课程教与学的现状

在从事计算机及相关专业基础课的教学过程中,发现语言课是学生学得最差、老师教得最辛苦的一门课程。根据专业教学计划,计算机应用、计算机网络、应用电子等专业开设了《C语言程序设计》课程,一般设置在二年级。从课程设置的角度来说,经过知识的积累和思维的锻炼,学生在这个阶段应该具备了学习一门基础语言课的能力。按正常教学规律来讲,在教师与学生的共同努力下是可以学好这门课程的,但实际情况确不尽人意。从多年实际教学经历来看,制约因素主要有两点:一是学生的数学基础差,而教材编排和例题分析与数学知识联系过于紧密,导致学生觉得难学;二是因为计算机编程使用英文,一些学生因英语学习的失败心理,觉得计算机语言是门高深莫测的课程,还没有上课就认为难学,而职业院校的部分学生学习不刻苦的现象,进一步导致教学过程中存在更多的障碍。针对这些情况,我认为要学好《C语言程序设计》课程,克服这两个障碍势在必然。

2 教师如何上好《C语言程序设计》课程

2.1 仔细领会教学大纲,全面深入教材改革

教师深入分析教学大纲,在全面了解学生的数学基础知识状况的前提下,根据大纲制定好教学计划。将教材中涉及到学生未掌握的数学知识方面的例题进行更换,避免因数学知识问题形成教学障碍。例如在讲多分支条件语句的应用中,教材普遍采用一元二次方程求解为例来说明,但一元二次方程的求解对于有些学生来说,虚数是一个知识障碍,可以想象得到,他们会学得一头雾水,教学效果自然就差。还有“输入三角形的三条边长,求三角形的面积。”的例题中,先要判断三条边是否能够组成三角形,再利用海轮公式计算面积,但海轮公式大部分学生都不清楚。这些例题就形成一个本末倒置的结果,为什么不选择其它的例题来分析呢?在后续的例题中,“根据成绩分数,输出等级。”,问题适当地简化,效果就很不错,还可以和后续的SWITCH语句结合起来教学。选取的例题除了有代表性外,涉及到的知识点也不可忽视,要记住,我们是在学习《C语言程序设计》,不是在学习数学,主次要分明。

2.2 精心准备,加强师生互动

课前要充分备课,准备好教学的内容和学生的练习,做到有的放矢。例如在讲到“自加++”与“自减--”运算符时,我们着重讲自加。例题为:int a,b=5;分析:a=++b;a=b++;a=++b++;运算后a,b的值。经过分析后,让学生掌握其规律:运算符在变量前是先做自加操作,再取其值完成后续运算;而运算符在变量后面则是先取其值进行运算,再完成自加操作。得出这个结论后,提示学生自减的运算也是相似的,要求学生分析将上述例题的自加改为自减后a,b的值,这样学生学习起来针对性就比较强。为什么要设置上面三个例题呢,上过《C语言程序设计》课程的教师自然知道每道题的代表性。最后可以用综合题加强这两个运算符的运用,采用如下练习:int a=4,b=5;分析a=++a-b;b=--a++-b++;运算后a,b的值。学生完成这道综合题后,对自加与自减的运算及使用自然清晰明了。

2.3 充分利用学生的成功心理,培养学习兴趣

我们曾经训练一些学生参加全市编程比赛(用Visual FoxPro编写),开始学生也是基本一无所知,我们只好从基本函数、语句开始上课。经历了一个多月时间,他们没有独立地完成任何一个程序的编写。后来不再给他们任何提示,而是让他们自己思考,有时几天后才给他们分析。其中有3名同学,经过了一周时间的查资料、上机调试,终于完成了一个图书管理系统的基本模块,并找到了成功感。自从那以后,他们能非常深入的分析我们布置的练习并经过反复地调试,找到答案,训练效果得到很大地提高。从中我们看到创造一个成功的心理,学生学习的兴趣就会自然提高,学习起来就会积极主动,效果当然比填鸭式教学好得多。

在平时的教学中,我们也应重视这一点,特别是对学习积极性较高的学生更是如此,今年的《C语言程序设计》课程实习中,这一点得到了充分体现。很多练习我都不先分析,而是让他们自己独立分析、调试,最后才小结。大部分学生两周实习完成后,总结说:“在这两周的实习中,所学到的知识比前半学期学到的知识还多”。其实,我想并不是他们在这个过程中学到了很多知识,关键是他们经过独立地思考分析,完成了程序的编写,获得了充分的成功感!有了成功感,就有了学习兴趣,兴趣是最好的老师。学生在学习中能获得快乐,学习过程自然就会轻松很多。

2.4 让学生学以致用,转变学习动机

在我初次上《C语言程序设计》这门课程时,有一名学生问:学了这门课有什么用?当时问得我张目结舌、哑口无言,不知如何回答他才好。后来想:我们的学生是职教性质的,所以对他们说学了这门课你可以去当程序员,同时为以后学习其他语言课打下基础等,这些对学生来说有点和实际不符。教他们这门课,应该让学生掌握一些解决实际问题的能力,才会促进他们努力学习,毫无目的地学习自然没动力。认识到这个问题的严重性后,在后面的教学中,我把平时遇到的一些问题结合起来进行教学,让他们知道掌握某些知识就能解决相关的一些问题,让他们在学习过程中觉得学习与实际生活很近,这样对《C语言程序设计》课程的认识就没那么抽象了。如在讲数组时,就以统计期中成绩情况为例,让他们完成:每个学生的总分、平均分的计算、排名情况;及每门课程的总分、平均分、最高分、最低分、合格率、优秀率的计算和成绩段分析,这既学好了数组的知识,还充分运用了前面章节的一些相关内容,同时,学习该课程的积极性也调动起来了。

2.5 让学生克服畏难心理,理性认识计算机编程语言

我们的学生大多在学习前就有畏难的情绪,觉得《C语言程序设计》课程难学、学不会,造成这种情况主要是对计算机编程语言不了解。另外就是有些学生英语学得差,看到计算机编程使用英文,就未学先弃了。其实学习语言并没有他们想象的那么难,英语差对学习计算机语言影响不大。比如学习该课程,真正要记的关键字只有32个,语法也不复杂,只要大家不带着畏难的心理,一定能学好的。作为《C语言程序设计》任课教师,在上课前,做好学生的畏难心理工作,会在今后的教学工作中起到事半功倍的效果。

2.6 从例题中提取精华,让学生掌握一些代表性的编程方法

这一点其实和学习数学一样,不管是教材中的例题还是教师另外安排的练习,一般来说都比较具有代表性,代表了某类问题的解决办法。因此,学生在学习中不要仅仅满足于理解或掌握这些题目的解决方法,还要进一步将这些具有代表性的解决办法提炼出来,为解决相似问题提供参考。比如说在讲数组排序方法的应用时,常会讲“冒泡法”和“选择法”两种排序方法,其实,作为一般的应用,不管是哪种排序方法都比较好,只要是排序的问题,使用其中的一种(或加以变换)都能解决问题的。

3 教师如何引导学生学好《C语言程序设计》课程

教学是一个相互配合的过程,涉及到教师如何教、学生如何学的问题,这两个环节相辅相成、缺一不可。学生如何学也起着举足轻重的作用,而学生如何学与教师的正确引导是密不可分的,下面就如何引导的问题谈几点看法。

3.1 强调该课程前四章的重要性,要打好扎实的基础

计算机语言的学习,真正要记住的知识不多。如该课程,只要学好前四章:标识符、运算符与表达式、顺序结构程序设计、程序调试方法等,并打下扎实的基础,后面的学习就会轻松得多。我们在教学中经常遇到这种情况,学到后面,有些学生连printf()、scanf()、putchar()、getchar()等常用函数的使用都忘了,这些最基本的知识都不能熟练掌握,又如何学习后面的内容呢?

3.2 让学生改变学习方式,为学生多动脑、多分析、多练习提供条件

据了解,有些学生在初中或高中的学习过程中,都存在着较多填鸭式的教学模式,造成学生在学习过程中不灵活、不动脑、不善于分析问题,只会生搬硬套、死记硬背的方法学习,这种情况对于学习计算机来说是一个最大的障碍。说实在的,如果想要学好、用好计算机,没有一定的悟性,并且不能融会贯通、举一反三是不行的。因此,在学习中不要满足于教师教了多少,而应该多动脑筋,对遇到的问题多分析、多思考,在计算机上多练习、多操作,还可以适当的看些相关的课外书,开阔视野,这样才会学好、运用好计算机语言。就像前面说到的那些学生,开始他们总是满足于教师教了他们多少;后来布置的练习,如果是经过教师分析后他们才做出来的,他们总是觉得没有成就感。因为填鸭式的教学,学生在学习中尝试不到学习的成功与快乐,自然就学不好。为此,在讲到具体程序设计后,每堂课上完后要布置两三道课后习题没有的题目,给学生多写、多编、多读、多看程序提供机会。

3.3 引导学生加强数学的学习,努力拓宽数学知识面

当然,如果要学得更深入一些,要求再高一些,扎实的数学基础知识对于学习编程无疑是必要的。在后续的编程学习中,对算法等知识的理解与掌握要求有相当的数学知识。因此,要求同学们要努力学好数学。比如在讲二维数组的应用时,如果学生提前了解线性代数中行列式和矩阵的相关知识,教学效果肯定显著。

以上是长期担任《C语言程序设计》课程教学的几点体会,从该课程的抽考和全国计算机等级考试《C语言程序设计》二级考试的情况来看,达到了预期的教学效果。

4 总结

总之,要学好《C语言程序设计》课程,对于职业院校的学生来说,首先就要克服畏难心理,教师在教学前这个工作没做到位的话,以后会带来很多教学障碍,这是开学初的首要任务;在教学过程中,要使学生在学习中得到快乐、尝试成功的喜悦,提高学习的积极性、主动性和学习动力无疑很重要;学以致用,才是我们职业院校教学的关键。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值