论文部分内容阅读
摘 要:本文提出来了C语言的游戏教学方法,并给出了可操作性的过程,为C语言教学提供了一种有效的教学方法。
关键词:C语言 教学 达成率
中图分类号:G633.67 文献标识码:A 文章编号:1673-9795(2013)08(b)-0174-01
1 C语言在其他计算机课程中的作用
1.1 C语言对其他课程的影响
C语言课程是一门计算机基础课程,可是这门基础课学生反映还是比较难的。为什么选择这样一门课作为计算机基础课呢,其主要原因就是目前的相关计算机软件或系统大多数是C语言编程,很多语言与C语言有共性,如,JAVA、汇编语言的分支、循环等功能语句也与其相似,数据结构课程中主要应用C语言实现算法,Awk是Unix下一种用于处理文本的脚本语言,该语言也与C语言有很多相似之处,Tcsh的一些功能特性与C语言类似等。
1.2 C语言在专业课程中应用比率
从C语言与其他语言的相似关系我们觉得学习C语言有一般性,在计算机类的专业中,相关的计算机课程与C语言有关的也不少,其比例以某高职院校的几个专业课程设置为例列表(见表1)。
2 C语言不同教学方法的达成率
C语言在传统的教学中随着课程内容的深入,由于枯燥的学习而产生厌学的问题,学生的学习达成率开始明显下降不足30%,其主要原因是学生兴趣没有跟上,学习劲头不足,虽然采用多种教学方法进行鼓励,但效果仍然不佳。当我们采用兴趣的游戏教学方法后,开始就产生浓厚的兴趣,学生对其实现的具体方法进行研究,开始研究怎么能达到自己想要实现的效果。教学中学生积极互动参与,达成率提高到60%以上。这样不但提高了学生学习兴趣和动手能力,也开发了逻辑思维,同时也促进了老师的业务提高。
3 C语言游戏教学的过程
3.1 开篇课程的引导
C语言开始就给学生一个兴趣界面。编写一段游戏小程序,让学生看,然后说明其中几个语句的作用,通过修改几个不同的参数,就可以得到不同的结果,让学生体验一下这个乐趣。然后再展示一个较大游戏程序,说明都是用这类语句命令完成的,学生会很好奇的看下去,非常想能自己编写一个能玩的程序,打破以前的从printf("Hello,world!");开始的传统教学模式。
如:
#include
int main()
{
printf("Hello,?world!"); return 0;
}
换以下方式来替代。
struct move_point
{
int x, y;
int xv, yv;
};
gotoxy(man.x, man.y);
printf(" ");
然后我们让物体按其速度运动:
man.x += man.xv;
man.y += man.yv;
运动后还要判断物体是否出界,如果出了界,就令物体反弹,即让它下一刻的速度等于现在的速度的相反数,最后打印出这个笑脸:
gotoxy(man.x, man.y);
printf("%c\b",2);
通过上面的程序改变,一个很有趣的程序便出现了,一个动态的,变化的图展现在学生面前,然后提出改进的方案,比如改变移动的方向。
3.2 给定任务实现自我完成
前面我们尝试着改变教学的方法,让学生建立起兴趣,学生会问,图形是怎么移动的,按前面提出的问题怎么改变方向。如果提出这样的问题,就是一大收获,达到了第一个目的,接下来你就开始讲起作用的语句了。
下面我们要继续前面的游戏功能完善:
让笑脸顺着方向移动,如果接收的是ESC键就退出程序,其他按键则忽略处理。接受按键我们用以下两条语句:
while (bioskey(1) == 0);
key = bioskey(0);
然后用switch语句来判断按键以及执行相关操作,如下:
switch (key)
{
case UP:
… break;
case DOWN:
… break;
case LEFT:
… break;;
case RIGHT:
… break;
default:
break;
}
当你把改变方向的原理讲清楚后,让学生去体会一下自己参与的结果,学生开始会笨手笨脚,一旦完成其成就感就会产生,会对接下来的学习产生兴趣。
3.3 总结教学加深学习
当老师带领学生写成一个游戏后,要对程序进行解剖,加深理解语句的功能和参数作用,回归到教学中,并指出,改变某些参数会产生的影响,这样学生会去实践这些参数的变化。通过互动的学习,从乐趣中学习知识,反过来又将知识用到学生感兴趣的程序游戏中,起到了培养动手能力的作用。教学中可以打破原来的计划,不怕语句的学习位置颠倒,因为语言的学习本身就是不限定语句的顺序。传统教学中也是有语句倒置的,用到就学,用多了就掌握了。
作者简介:王鹏(1982—),男,吉林电子信息职业技术学院计算机系讲师。
关键词:C语言 教学 达成率
中图分类号:G633.67 文献标识码:A 文章编号:1673-9795(2013)08(b)-0174-01
1 C语言在其他计算机课程中的作用
1.1 C语言对其他课程的影响
C语言课程是一门计算机基础课程,可是这门基础课学生反映还是比较难的。为什么选择这样一门课作为计算机基础课呢,其主要原因就是目前的相关计算机软件或系统大多数是C语言编程,很多语言与C语言有共性,如,JAVA、汇编语言的分支、循环等功能语句也与其相似,数据结构课程中主要应用C语言实现算法,Awk是Unix下一种用于处理文本的脚本语言,该语言也与C语言有很多相似之处,Tcsh的一些功能特性与C语言类似等。
1.2 C语言在专业课程中应用比率
从C语言与其他语言的相似关系我们觉得学习C语言有一般性,在计算机类的专业中,相关的计算机课程与C语言有关的也不少,其比例以某高职院校的几个专业课程设置为例列表(见表1)。
2 C语言不同教学方法的达成率
C语言在传统的教学中随着课程内容的深入,由于枯燥的学习而产生厌学的问题,学生的学习达成率开始明显下降不足30%,其主要原因是学生兴趣没有跟上,学习劲头不足,虽然采用多种教学方法进行鼓励,但效果仍然不佳。当我们采用兴趣的游戏教学方法后,开始就产生浓厚的兴趣,学生对其实现的具体方法进行研究,开始研究怎么能达到自己想要实现的效果。教学中学生积极互动参与,达成率提高到60%以上。这样不但提高了学生学习兴趣和动手能力,也开发了逻辑思维,同时也促进了老师的业务提高。
3 C语言游戏教学的过程
3.1 开篇课程的引导
C语言开始就给学生一个兴趣界面。编写一段游戏小程序,让学生看,然后说明其中几个语句的作用,通过修改几个不同的参数,就可以得到不同的结果,让学生体验一下这个乐趣。然后再展示一个较大游戏程序,说明都是用这类语句命令完成的,学生会很好奇的看下去,非常想能自己编写一个能玩的程序,打破以前的从printf("Hello,world!");开始的传统教学模式。
如:
#include
int main()
{
printf("Hello,?world!"); return 0;
}
换以下方式来替代。
struct move_point
{
int x, y;
int xv, yv;
};
gotoxy(man.x, man.y);
printf(" ");
然后我们让物体按其速度运动:
man.x += man.xv;
man.y += man.yv;
运动后还要判断物体是否出界,如果出了界,就令物体反弹,即让它下一刻的速度等于现在的速度的相反数,最后打印出这个笑脸:
gotoxy(man.x, man.y);
printf("%c\b",2);
通过上面的程序改变,一个很有趣的程序便出现了,一个动态的,变化的图展现在学生面前,然后提出改进的方案,比如改变移动的方向。
3.2 给定任务实现自我完成
前面我们尝试着改变教学的方法,让学生建立起兴趣,学生会问,图形是怎么移动的,按前面提出的问题怎么改变方向。如果提出这样的问题,就是一大收获,达到了第一个目的,接下来你就开始讲起作用的语句了。
下面我们要继续前面的游戏功能完善:
让笑脸顺着方向移动,如果接收的是ESC键就退出程序,其他按键则忽略处理。接受按键我们用以下两条语句:
while (bioskey(1) == 0);
key = bioskey(0);
然后用switch语句来判断按键以及执行相关操作,如下:
switch (key)
{
case UP:
… break;
case DOWN:
… break;
case LEFT:
… break;;
case RIGHT:
… break;
default:
break;
}
当你把改变方向的原理讲清楚后,让学生去体会一下自己参与的结果,学生开始会笨手笨脚,一旦完成其成就感就会产生,会对接下来的学习产生兴趣。
3.3 总结教学加深学习
当老师带领学生写成一个游戏后,要对程序进行解剖,加深理解语句的功能和参数作用,回归到教学中,并指出,改变某些参数会产生的影响,这样学生会去实践这些参数的变化。通过互动的学习,从乐趣中学习知识,反过来又将知识用到学生感兴趣的程序游戏中,起到了培养动手能力的作用。教学中可以打破原来的计划,不怕语句的学习位置颠倒,因为语言的学习本身就是不限定语句的顺序。传统教学中也是有语句倒置的,用到就学,用多了就掌握了。
作者简介:王鹏(1982—),男,吉林电子信息职业技术学院计算机系讲师。