下面是一个用C语言编写的 《笑脸碰边框反弹 》游戏(可在TC中很好运行),高手请看问题~~

2024-11-02 07:32:18
推荐回答(1个)
回答(1):

理解这个程序,先要知道conio.h中的几个函数
conio.h是对输入输出设备进行基本控制的函数库
gotoxy(x,y); 是控制屏幕输出的主要函数,文本方式下,屏幕是80列*25行,gotoxy是定义到(x,y)坐标,以后的输出就从这个位置开始;
putchar(c); 是向屏幕输出一个字符,c 是ASCII码
biosky(); 是无等待地获取键盘输入,得到的是键的扫描码,如果没有按键也立刻返回,返回值是0;

void frame(int l,int r,int u,int d) // 绘制一个矩形
{
int i;
for(i=l;i { // 从l到r,分别在u和d的位置绘制横线
gotoxy(i,u);
printf("%c",219);
gotoxy(i,d);
printf("%c",219);
}
for(i=u+1;i { // 从u+1到d,分别在l和r的位置绘制两条竖线
gotoxy(l,i);
printf("%c",219);
gotoxy(r,i);
printf("%c",219);
}
}

void move(int key,int *x,int *y,int *l,int *r,int *u,int *d)
这个函数是根据key的码值,计算下一个x和y 的坐标,如果碰到了边界,则x和y停留在边界的位置上。这个函数有两个putchar
第一个是输出空格,擦除原先位置上的符号;
第二个是计算出新的位置后,输出ASCII(1)的符号,可能就是你说的那个笑脸

剩余的部分估计你应该能够理解了