C
趣味程序导学 语言
(请到附件里下载源代码与课件)
电脑游戏,一个熟悉而诱人的字眼,常常不经意地浮现在我们的脑海当中。
有梦幻神奇的 《传奇》,有惊险刺激的 《反恐精英》,有纯真童趣的 《泡泡堂》,
online e
还有武林情仇,笑傲江湖的 《剑侠情缘 》。它是 时代常谈的话题,是交
互式娱乐的主力军,是一种高层次的综合艺术,更是一个民族的文化、世界观的
全新传播方式。作为游戏玩家的我们,是不是想设计一个属于自己的游戏呢?
爱玩是人的天性,而C语言是我们计算机专业都要学习的一门基础学科。
一般来说,是比较枯燥的。那么,我们能不能通过编一些小游戏来提高它的趣味
性呢?这样学习程序设计,就不会是一件艰苦、枯燥的事,它变得象电脑游戏一
样充满好奇,富有乐趣。这正是我这个讲座的目的。
1、 总是从Hello,world 开始
学习编程的第一个程序,一般就是打印一个亲切的词语——“Hello,world!”。
让我们来看看这个最简单的C程序:
#incolude/*把输入输出函数的头文件包含进来*/
intmain()
{
printf(“Hello,world!”);/*在屏幕上输出字符串“Hello,world!”*/
return 0;/*退出main 函数,并返回0*/
}
下面我们发现几个值得改进的地方,1、程序的运行结果一闪而过。2、每执
行这个程序一次都能看见上次运行留下的字符。3、我们还希望屏幕输出一个笑
脸来欢迎我们。让我们来改进一下这个程序吧!1、在return 语句的前面加一句:
getch ();,表示按任意键结束。2、在printf语句前用clrscr 函数清屏,要使用这
getch conio.h 3 ASCII
个函数和 函数,需要在程序开头再包含头文件 。 、 码也有
许多非常好玩的字符,比如ASCII 码值为2 的就是一个笑脸,我们可以用
printf(“%c”,2)来输出一个笑脸。
现在我们把Hello,world程序改成一个更好看的Hello,world 了。下面让我们
开始做游戏吧!
2、 心动的开始,一个运动中的笑脸
大家小时侯喜欢看动画片吗?哈哈,我猜你们都喜欢吧!下面就让我们来做
一个小动画吧。在屏幕上显示一个运动的小笑脸,而且当它到达屏幕的边缘时会
自动弹回来。
先在程序定义一个在屏幕中运动的点的结构:
structmove_point
{
intx,y;/*该点的位置,包括x 坐标和y 坐标*/
intxv,yv;/* x y */
该点在 轴、 轴的速度
};
运动的原理是,先擦去物体先前的轨迹,让物体按其速度移动一段距离,再
画出该物体。让我们看到以下代码:
gotoxy(man.x,man.y);/*把光标移到指定的坐标*/
printf(““);/*输出一个空格,把先前的字符擦去*/
然后我们让物体按其速度运动:
man.x+ man.xv;/*水平方向按x 轴的速度运动*/
man.y + man.yv;/*垂直方向按y 轴的速度运动*/
运动后还要判断物体是否出界,如果出了界,就令物体反弹,即让它下一刻
的速度等于现在的速度的相反数。最后打印出这个笑脸:
gotoxy(man.x,man.y);
printf(“%c\b”,2);/*输出ASCII 码值为2 的 “笑脸”字符*/
怎么样?是不是很有趣呢?不过这个笑脸一直是自己运动,能不能让我们来
控制它运动呢?答案是肯定的,让我们继续往下学吧!
3、 交互的实现——让我们来控制笑脸运动
这个程序的主要功能是接受按键,如果接收的是方向键,就让笑脸顺着方向
移动,如果接收的是ES