英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料
关于C语言程序设计的教学研究与思考
Hui Gao1,2, Zhaowen Qiu2,*, Di Wu2, and Liyan Gao3
1Harbin Huade University, China
2Institute of Information and Computer Engineering, Northeast Forestry University, China
qiuzw@nefu.edu.cn, 85312371@qq.com
3 Harbin 47 middle school, China
chncsp@163.com
摘要:C语言是一门基本的编程语言,大多数科学与工程专业都将其作为本专业的强制性基础课程。在课程的教学阶段,学生没有足够的时间做完整的综合练习。在教学C语言程序设计时,教师和学生都存在一些问题。一方面教师应该转变教学思想并激发学生的学习动力,另一方面,学生应该自发地学习。这样,学生才能够提高他们自己的编程能力并学以致用。
关键字:C语言程序设计教学,教学思想,独立学习,实践
1 简介
C语言是一种不断发展的基本的编程语言,它包含了编程的基本概念和思路。在高等教育中,它作为科学与工程专业的一门主要必修课,并且其内容与国外是同步的。客观地说,我们怎么教或学习它,这将直接影响到教学效果。在这些年的C语言教学中,我已经想了很多有关如何提高教学效果的想法并且付诸实践起到作用。
2 教学C语言程序设计的现状和问题
如今,传统的C语言程序设计教学,在形式上,总是以各种讲座、多媒体教室的计算机培训等方式进行开展。在内容上,他们总是介绍和说明,它遵循三个步骤,概念,简单的例子和指导实践。三步教学法存在教学时数的限制。而对于教学生设计理念,方法,重要的概念和应用,老师在课上没有时间去教授。
在C语言程序设计教学中,教师和学生都存在着一些问题。
2.1教学材料安排的不合理
现在,在C语言程序设计教学选定教科书中大部分材料是不切实际和缺乏兴趣的。学生们对教科书中的内容不感兴趣。他们不会认真得去学习,这不仅影响到老师教学的效果,而且会为学生以后的学习埋下更大的隐患。
2.2过时的教学方法不能激励学生
在课堂教学中,C语言程序设计课程总是给出讲座,不能充分发挥学生的直观形式。老师不知道学生是否备课,或者他们真正需要什么,无论是多么先进的直观的多媒体教学手段,启发式教学方法也不能够得到充分利用。所有这些,在某种程度上挫伤学生的积极性。
2.3教师没有充分认识各专业之间的差异,所以他们不能激发学生兴趣
对于不同的专业来讲,关键点应该是不同的。老师们总是忽略不同专业之间的差异,教授相同的课程给不同的专业。通过这种方式的教学之后,学生所学不能满足自己的专业实践的需要,所以学生对这门课程不会有好的学习态度。
2.4学生缺乏自主学习的意识,并且忽视实践教学的重要性
多数学生都是以教师为中心。他们不会问任何问题,或者说,他们根本不知道要问什么。下课后,出于缺乏勤奋的,他们几乎没有参考相关书籍或材料。互联网为我们提供了一个开放的学习环境。但是,学生们不是积极的学习,而是沉迷于在线游戏。在这一点上,教师有责任引导学生学会自主学习[2]的方法。 C语言是一种实用的计算机语言。然而,在目前的实践课程教学中有诸多弊端。在练习中,很多同学不明白代码的含义,是因为他们对于课上的知识不在意,而有些是因为有些不负责任的老师对学生要求不严格,还有一些是因为有些人安排的课程不合理。这些在一定程度上导致学生喜欢在实践课程教学上打游戏。在实际操作中,随着课程难度的不断提高,学生的渐渐地就不喜欢这门课程了[4]。
3 提高C语言程序设计教学效果的方法
3.1教材应有利于激发学生主动性
理论上,教科书应满足学生的不同层次的需求。并且引用的案例应该具有实用性,这样当学生阅读的时候才会有兴趣读下去。例如,作为一个应用为本的大学,我们应该选择那些有实用性、案例充分和详细解释的材料。如高校C语言实用教程(第3版)。
此外,实践教材内容的安排,应根据学生的专业兴趣。一方面,它应该包含关键内容。另一方面,实验案例应该与专业实践相关。通过这种方式,实践教材应该包含完整的综合的练习题目。经过实践训练,学生将能够完成所有的练习,并学习设计应用程序的方法。这样他们才能真正的提高实践能力[1]。
3.2改变思考的模式和教学方法
为了提高学生对C语言的兴趣,帮助他们建立正确的思维模式,教师应该通过诠释一个完整的程序例子,给学生一个什么是编程的第一印象。然后老师解释这些程序语句,让学生了解C语言的总体思路。 在这个教学过程中,教师应注重思想,方法和算法,将有助于提高学生分析问题和解决问题的能力,并建立程序设计的正确的思维模式。
以猜谜游戏程序设计为例子。规则如下:玩家有七个机会来猜由程序随机生成的数字。如果他输了,程序会生成一个新的号码。玩家可以选择继续猜或是终止游戏。该程序会告诉玩家猜的正确与否,猜的比程序生成的数字高还是低。
第1步:自然语言分析。该程序“想出”一个1到100之间的数字。当玩家猜测正确,则显示“对!”,否则“错!”,并告诉玩家他猜得数字是高出还是低于程序“想出”的数字。每个玩家有七个机会去猜程序“想出”的数字,超过七次比赛就结束了。玩家可以反复猜测数字,直到他想要停下来。
首先,从总体上看,该方案的基本功能是“生成”、“猜猜”和“退出与否”。如果不是这样,“再重复”。
在这个方案中,“生成”和“猜测”两个子模块。在整体设计,我们只需要考虑自己应该做的,但不知道如何去做。
第2步:流程图设计。
图一
第3步:代码设计。
/*主要的功能设计,初始化随机种子,完成框架设计自上而下。*/
#include lt;stdlib.hgt;
#include lt;stdio.hgt;
#include lt;assert.hgt;
#include lt;time.hgt;
#define MAX_NUMBER 100
#define MIN_NUMBER 1
#define MAX_TIMES 7
intMakeNumber(void);
voidGuessNumber(intnumbre);
main()
{
int number;
intcont;
srand(time(NULL));
do{
number=MakeNumber();
GuessNumber(number);
printf('Continue?(Y/N):');
cont=getchar();
while(getchar()!= )
{ ; }
}while(cont!=Namp;amp;cont!=n) ;
return 0;
}
/*子功能设计:调用函数rand()生成随机数,计算控制的值在MIN_NUMBER和 MAX_NUMBER之间。*/
intMakeNumber(void)
{
int number;
number=(
rand()%(MAX_NUMBER-MIN_NUMBER 1)) MIN_NUMBER;
assert(numbergt;=MIN_NUMBERamp;amp;numberlt;=MAX_NUMBER);
return number;
}
/ *子功能设计:根据输入的数字号码,告诉对错,高或低,MAX_TIMES倍以内。*/
voidGuessNumber (int number)
{ int guess;
int times=0;
assert ( numbergt;=MIN_NUMBERamp;amp;numberlt;=MAX_NUMBER);
do{
times ;
printf('Round %d:',times);
scanf('%d',amp;guess);
while(getchar()!= )
{ ; }
if (guess gt; number)
printf('Wrong! Too high! ');
else if (guess lt; number)
printf('Wrong! Too low! ');
} while (guess != numberamp;amp;timeslt;MAX_TIMES);
if(guess==number)
printf('Congratulations!You re so cool! ');
else
printf('Mission failed after %d attempts. ',MAX_TIMES);
}
第4步:编译和运行。除了结构化程序设计的路线,我们写三个相对独立的程序,完成方案设计,并实现我们的预期。接口运行如下。
图1显示了计算结果,当玩家在七次之内没有猜出正确的数字。
图二
图2显示了计算结果,当玩家在七次之内猜出正确的数字。
图三
至于涉及的C语言编程算法,教师应选择详细讲解,为学生提供更多的实践培训的同时,指示在不同的算法之间的关系。此外,教师可以利用多媒体教学过程中,扩大信息量,如演示用C语言编写优秀的软件。通过解释这些计划,教师管理向学生传授优秀的编程思想,方法。
3.3激发不同专业的兴趣
为了激发学生的学习兴趣,教师要首先声明C语言的重要性和实用性,让学生了解在未来这将会对他们的专业有很大的帮助。然后,学生会感兴趣。
C语言是基础课程。在第一课中,教师应以C语言的功能,它的进化,它在计算机语言的地位,与VC 和其他有程序设计语言、软件设计的应用、嵌入式系统等等的关系着手讲起。来阐明C语言在计算机科学的地位,向学生展示一些用C语言编写的程序会更好,如游戏得分程序,猴子吃桃子问题,韩信召集士兵的问题。动画效果和图形界面这些程序可以有效地激发学生的学习兴趣。
实际上,教育心理学研究表明,兴趣来自动机,伴随动作和满足自身在结果中。例如,当教学生学电子产品,教师可以结合应用设计来自“飞思卡尔”和“彼身杯”到他的C语言编程的特点详细说明。这意味着,通过有针对性的学习,学生获得启示,知识和能力。当他们觉得它有用和有效的,对本课程的兴趣和热情将被唤起[3]。
因此,在教学中,教师应引导学生尝到成功并获得满意的收获。
3.4鼓励学生提出问题和激发学生主动学习
在教学中,教师不应该让学生只局限于教材书上的方法,而是要鼓励他们对算法和解决方案有自由的不同的意见,这能帮助学生探索新的途径来解决问题,发展创意。教师亦应给学生更多的机会来质疑,并积极找到问题解决的最佳方案。这样一来,我们就可以实现鼓励学生主动学习的目标。
3.5给予更多的实训
C语言编程是一个实践性很强的课程。为了理解理论知识,学生必须不断实践。所以C语言教学的目的应该在于应用。教师把重点放在练习技巧的构造上,付出更多注意在实践教学,激发学生的创新意识。 在教学中,教师应致力于结合引导和咨询、投影演示和电脑操作的方法。教师可改善课程设计,以增加实践的比例,这可以帮助学生提高创造性思维,提高分析问题、独立地解决问题和编程的能力[5]。
4结论
综上所述,为了提高学生运用C语言知识的能力全面帮助学生形成良好的编程习惯,教师应系统地分析整个教学过程,并实施教学改革根据不同专业的实际情况。帮助学生获得的练习、学习课程和综合运用知识的能力的。 在这样一来,我们做提高学生的编程能力。
感谢基金会:东北林业的C 程序设计的重点课程大学。
参考文献
[1]Xuebing, W.: The Innovative thoughts and Improvements in C Language Teaching. Hippoph
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[29011],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。