贪吃蛇c语言版

上传人:小** 文档编号:79451651 上传时间:2019-02-17 格式:DOC 页数:6 大小:39KB
返回 下载 相关 举报
贪吃蛇c语言版_第1页
第1页 / 共6页
贪吃蛇c语言版_第2页
第2页 / 共6页
贪吃蛇c语言版_第3页
第3页 / 共6页
贪吃蛇c语言版_第4页
第4页 / 共6页
贪吃蛇c语言版_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《贪吃蛇c语言版》由会员分享,可在线阅读,更多相关《贪吃蛇c语言版(6页珍藏版)》请在金锄头文库上搜索。

1、#include /文件包含#include #include #include #include /宏#define CLS system(cls) /清频#define KEY_UP 72 /向上箭头键 #define KEY_DOWN 80 /向下箭头键#define KEY_RINGT 77 /向右箭头键#define KEY_LEFT 75 /向左箭头键#define KEY_PUSH 32 /空格#define KEY_ESC 27 /退出#define GOTO1 my_gotoxy(* spx,* spy) /蛇头的跳转#define GOTO2 my_gotoxy(snake

2、snakei0,snakesnakei1) /去尾巴的跳转#define GOTO3 my_gotoxy(snake10,snake11) /蛇身的跳转#define PT printf()/蛇头的打印#define PS printf()/蛇身的打印#define WJJ(I) my_gotoxy(snakesnakei0,snakesnakei1),printf(),my_lb(),I,my_gotoxy(* spx,* spy),PT,my_gotoxy(snake10,snake11),PS/函数void my_start(); /开始画面void my_hidecursor(); /

3、隐藏光标void my_showcursor(); /显示光标void my_gotoxy(int ,int ); /光标跳转void my_food(int food,int snake12); /食物投放void my_snakehead(int snake32); /蛇头+2个蛇身的位置int food2;/食物的坐标int snaken = 3;/蛇身体(包含蛇头)int snakei = 2;/蛇身计算int snake1002;/蛇身体位置int * spx = &snake00;/蛇头xint * spy = &snake01;/蛇头yint grade = 1;/等级int s

4、core = 0;/分数int Stime = 150;/游戏速度int sg = 10;/升级要求char ch = a;/输入的按键char ch_ = 77;void my_lb();/蛇身数组前进一步int main(void)system(title 贪吃蛇 By:幸福的甜蜜C);my_hidecursor();my_start();my_snakehead(snake);while (ch != 27)my_food(food,snake);while (ch != 27)if (* spx = 0 | * spx = 24 | * spy = 0 | * spy = 14)/碰到

5、墙壁my_gotoxy(0,20);printf(你输了.你撞墙了.);_getch();exit(0);for (int qi = 1;qi snaken;qi+)/自己吃尾巴if (snake00 = snakeqi0 & snake01 = snakeqi1)my_gotoxy(0,20); printf(你输了.你吃掉了自己的尾巴.); _getch(); exit(0);if (* spx = food0 & * spy = food1)score+;/分数 snaken+;/蛇长 snakei+;/蛇计算if (score = 99)my_gotoxy(25,13);printf(

6、恭喜过关,你太牛了);_getch();exit(0);else if (score = sg)grade+;sg += (grade*10); if (grade = 3)Stime -= 5; else Stime -= 50;my_gotoxy(25,8);printf(分数为:%-2d,score);my_gotoxy(25,9); printf(等级为:%-2d (15),grade);break;Sleep(Stime);if (_kbhit() | ch = 32)ch = _getch();switch (ch)case 72 : WJJ(-(* spy);break;/向上移

7、动case 80 : WJJ(+(* spy);break;/向下移动case 77 : WJJ(+(* spx);break;/向左移动case 75 : WJJ(-(* spx);break;/向右移动default : ;return 0;void my_lb()snakesnakei0 = snakesnakei-10;snakesnakei1 = snakesnakei-11;snakei-;if (snakei = 0)snakei = snaken-1;else my_lb();/函数void my_start() /开始画面int a1525 = 0;int n,m;for (

8、n = 1;n 14;n+)for (m = 1;m 24;m+)anm = 1;for (n = 0;n 15;n+)for (m = 0;m 25;m+)if (anm = 0)printf();elseprintf();printf(n);my_gotoxy(25,0);/注释区printf();for(int i = 1;i 14;i+)my_gotoxy(33,i);printf();my_gotoxy(25,14);printf();my_gotoxy(24,2);printf();my_gotoxy(25,1);printf( -说明- );my_gotoxy(25,3);pri

9、ntf(为蛇头,为蛇);my_gotoxy(25,4);printf(身,上下左右控制);my_gotoxy(29,6);printf(BY:幸福);my_gotoxy(24,7);printf();my_gotoxy(25,8);printf(分数为:0 );my_gotoxy(25,9);printf(等级为:1 );void my_hidecursor() /隐藏光标CONSOLE_CURSOR_INFO cursor_info = 1,0;SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);void m

10、y_showcursor() /显示光标CONSOLE_CURSOR_INFO cursor_info = 1,1;SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);void my_gotoxy(int x,int y) /光标跳转COORD pos;pos.X = 2 * x;pos.Y = y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);void my_food(int food,int snake12) /食物投放extern int snaken;int i,j;srand(unsigned)time(NULL);do i = 0; food0 = rand()%23+1;/食物X food1 = rand()%13+

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号