贪吃蛇课程设计2
贪吃蛇教案6篇

贪吃蛇教案6篇教师制定教案是备课工作中不可或缺的组成部分,创意十足的教案设计能够让学生在学习过程中体验到探索的乐趣,作者今天就为您带来了贪吃蛇教案6篇,相信一定会对你有所帮助。
贪吃蛇教案篇1要求:1、学会与同伴分享故事的乐趣。
2、学习运用多种颜色来绘画,进一步感受颜色的美。
准备:变色龙模型,玩具车、恐龙涂案、蜡笔等建议:1、以神秘口吻引入,激发幼儿倾听故事兴趣。
2、借助教具,生动地讲述故事《贪吃的变色龙》,让幼儿初步了解故事的内容。
3、提问:故事名称?故事中有什么?4、引导幼儿说说变色龙吃了那些东西?身体都发生了什么变化?5、玩“恐龙变色”的游戏:让幼儿自由选择两种以上的颜色给恐龙图案进行重叠涂染活动。
6、提要求:(1)、任选两种颜色进行重叠涂染。
(2)、做到“三轻”,保持桌面整洁、干净。
7、幼儿自由涂染活动,师重点指导幼儿要在恐龙图案上重叠涂染。
8、幼儿互相交流、欣赏作品。
活动反思:孩子在玩中学,学中玩,兴趣浓浓。
在孩子们的自由作画时间了,老师巡回指导,发现较好或有自己创意的孩子就进行及时表扬,孩子们互相学习,很好的完成了作品。
根据小班幼儿的年龄,设计了有趣的教学用具和游戏设计,整个活动,幼儿在愉快的气氛中获得初浅的社会经验,体验了解他人的快乐。
效果好。
贪吃蛇教案篇2活动目标:1、获得听故事的乐趣。
2、学习翻阅图书的顺序。
3、运用材料进行创作。
4、引导幼儿在故事和游戏中学习,感悟生活。
5、鼓励幼儿大胆的猜猜、讲讲、动动。
活动准备:1、故事:《贪吃的变色龙》2、透明片,油性笔活动过程:1、讲述故事《贪吃的变色龙》2、教师讲故事时,要求幼儿跟随老师讲的内容翻阅幼儿用书。
3、用提问帮助幼儿理解故事内容。
师:请小朋友说说恐龙吃了什么改变了颜色?4、教师用油性笔在透明片上示范画图,画好后贴在玻璃窗上,请幼儿欣赏。
5、给幼儿一人一张透明片,请幼儿自由创作。
6、完成的作品,贴在窗户上,让大家欣赏。
活动反思:贪吃的变色龙》是一个生动、有趣的故事,深受孩子们的喜爱。
如何设计课程设计贪吃蛇

如何设计课程设计贪吃蛇一、教学目标本课程的设计目标是让学生了解并掌握“贪吃蛇”游戏的编程原理和设计方法。
通过本课程的学习,学生将能够:1.理解“贪吃蛇”游戏的规则和基本原理;2.掌握使用编程语言实现“贪吃蛇”游戏的基本技能;3.培养学生的逻辑思维能力和问题解决能力;4.增强学生对计算机编程的兴趣和热情。
二、教学内容本课程的教学内容将包括以下几个部分:1.“贪吃蛇”游戏的基本规则和原理;2.编程语言的基本概念和语法;3.“贪吃蛇”游戏的编程实现;4.游戏编程中常用的算法和数据结构。
三、教学方法为了达到上述教学目标,我们将采用以下教学方法:1.讲授法:用于讲解“贪吃蛇”游戏的基本规则和原理,以及编程语言的基本概念和语法;2.案例分析法:通过分析已有的“贪吃蛇”游戏代码,让学生了解并掌握游戏编程的方法;3.实验法:学生通过动手编写代码,实现自己的“贪吃蛇”游戏,培养问题解决能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《XXX编程语言教程》、《贪吃蛇游戏编程》等;2.参考书:《XXX编程语言参考手册》、《算法导论》等;3.多媒体资料:教学PPT、视频教程等;4.实验设备:计算机、编程软件等。
通过以上教学资源的使用,我们将帮助学生更好地掌握“贪吃蛇”游戏的编程方法,提高学生的编程能力和问题解决能力。
五、教学评估本课程的评估方式将包括以下几个方面:1.平时表现:通过学生在课堂上的参与度、提问回答、小组讨论等表现来评估;2.作业:通过学生提交的编程练习和项目任务来评估;3.考试:通过期末考试来评估学生对课程内容的掌握程度。
评估方式将力求客观、公正,能够全面反映学生的学习成果。
六、教学安排本课程的教学安排如下:1.教学进度:按照教学大纲和教材的章节顺序进行教学;2.教学时间:每周安排2课时,共计10周;3.教学地点:计算机实验室。
教学安排将确保在有限的时间内完成教学任务,并考虑学生的实际情况和需要。
大学生贪吃蛇体育游戏教案

教学对象:大学生教学目标:1. 培养学生的团队协作能力和沟通能力。
2. 锻炼学生的身体,提高身体素质。
3. 培养学生的竞技精神和公平竞争意识。
教学重点:1. 游戏规则的讲解与示范。
2. 团队协作与沟通技巧的培养。
教学难点:1. 游戏中的策略运用。
2. 团队之间的配合与协调。
教学准备:1. 贪吃蛇游戏道具:呼啦圈、绳子、标志物等。
2. 游戏场地:宽敞的操场或室内体育馆。
教学过程:一、导入1. 教师简要介绍贪吃蛇游戏的基本规则和玩法。
2. 引导学生思考游戏中的团队协作和沟通技巧。
二、游戏规则讲解与示范1. 教师详细讲解游戏规则,包括游戏目标、游戏流程、得分规则等。
2. 示范游戏中的团队协作和沟通技巧,如指挥、协调、传递信息等。
三、分组与热身1. 将学生分成若干小组,每组人数相等。
2. 进行简单的热身运动,如慢跑、拉伸等,提高学生的身体协调性和灵活性。
四、游戏实践1. 各小组按照游戏规则进行比赛,教师巡回指导。
2. 在游戏中,教师关注学生的团队协作和沟通情况,及时给予指导和建议。
五、游戏总结1. 各小组分享游戏过程中的心得体会,教师点评。
2. 总结游戏中的团队协作和沟通技巧,强调在日常生活中运用的重要性。
六、拓展活动1. 邀请学生分享自己在游戏中的创新玩法和策略。
2. 组织学生进行拓展活动,如趣味接力、团队拔河等,进一步巩固团队协作和沟通技巧。
教学评价:1. 观察学生在游戏中的团队协作和沟通情况,给予评价。
2. 收集学生对游戏规则、团队协作和沟通技巧的反馈意见,改进教学。
教学反思:1. 游戏规则讲解要清晰明了,确保学生理解。
2. 游戏过程中的指导要适时适度,既要保证游戏顺利进行,又要培养学生的团队协作和沟通能力。
3. 拓展活动要具有趣味性和挑战性,激发学生的参与热情。
4. 教学评价要客观公正,关注学生的个体差异,给予针对性的指导和建议。
课程设计贪吃蛇小游戏程序设计

信息技术学院本科课程设计报告课程设计题目学生姓名:李雪学院:信息技术学院专业:信息治理与信息系统班级:B1102学号:0911110201指导教师:王浩涌完成日期:辽东学院Eastern Liaoning University一、题目(问题)描述贪吃蛇小游戏程序设计图1 贪吃蛇系统界面二、功能分析贪吃蛇游戏是一个经典小游戏,一条蛇在封锁围墙里,围墙里随机显现一个食物,通过按键盘四个光标键操纵蛇向上下左右四个方向移动,蛇头撞倒食物,那么食物被吃掉,蛇躯体长一节,同时记10分,接着又显现食物,等待蛇来吃,若是蛇在移动中撞到墙或躯体交叉蛇头撞倒自己躯体游戏终止。
三、系统设计1.程序整体结构图2贪吃蛇程序系统的构图2.界面设计如图,通过W、S、A、D、space键进行操作3.输入方式设计A 用W、S、A、D、键操纵蛇的上下左右移动,space键停止,esc键终止。
B 游戏目标:操纵屏幕上那条可爱的小蛇,在方框中不断吃豆豆,而每吃一个豆豆,蛇的躯体都变的更长一些,即增加一颗星星。
游戏的难度也会随之加大。
C 游戏终止:终止条件1——蛇头撞到墙上;终止条件2——蛇身形成一个圈,也确实是蛇头碰着自身的任何一处4.重要数据的数据结构设计5.函数设计6.函数挪用图7. 实体属性图四、关键技术、难点及其解决方式五、测试方式六、总结附录1程序源代码#include <windows.h>#include <stdlib.h>#include <time.h>#include <stdio.h>#include <string.h>#include <conio.h>#define N 21int apple[3];char score[3];char tail[3];void gotoxy(int x, int y) //输出坐标{COORD pos;pos.X = x;pos.Y = y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos); }void color(int b) //颜色函数{HANDLE hConsole = GetStdHandle((STD_OUTPUT_HANDLE)) ;SetConsoleTextAttribute(hConsole,b) ;int Block(char head[2]) //判定出界{if ((head[0] < 1) || (head[0] > N) || (head[1] < 1) || (head[1] > N))return 1;return 0;}int Eat(char snake[2]) //吃了苹果{if ((snake[0] == apple[0]) && (snake[1] == apple[1])){apple[0] = apple[1] = apple[2] = 0;gotoxy(N+44,10);color(13);printf("%d",score[0]*10);color(11);return 1;}return 0;}void Draw(char **snake, int len) //蛇移动{if (apple[2]) {gotoxy(apple[1] * 2, apple[0]);color(12);printf("●");color(11);}gotoxy(tail[1] * 2, tail[0]);if (tail[2]){ color(14);printf("★");color(11);}elseprintf("■");gotoxy(snake[0][1] * 2, snake[0][0]);color(14);printf("★");color(11);putchar('\n');char** Move(char **snake, char dirx, int *len) //操纵方向{int i, full = Eat(snake[0]);memcpy(tail, snake[(*len)-1], 2);for (i = (*len) - 1; i > 0; --i)memcpy(snake[i], snake[i-1], 2);switch (dirx){case 'w': case 'W': --snake[0][0]; break;case 's': case 'S': ++snake[0][0]; break;case 'a': case 'A': --snake[0][1]; break;case 'd': case 'D': ++snake[0][1]; break;default: ;}if (full){snake = (char **)realloc(snake, sizeof(char *) * ((*len) + 1));snake[(*len)] = (char *)malloc(sizeof(char) * 2);memcpy(snake[(*len)], tail, 2);++(*len);++score[0];if(score[3] < 16)++score[3];tail[2] = 1;}elsetail[2] = 0;return snake;}void init(char plate[N+2][N+2], char ***snake_x, int *len) //初始化{int i, j;char **snake = NULL;*len = 3;score[0] = score[3] =3;snake = (char **)realloc(snake, sizeof(char *) * (*len));for (i = 0; i < *len; ++i)snake[i] = (char *)malloc(sizeof(char) * 2);for (i = 0; i < 3; ++i){snake[i][0] = N/2 + 1;snake[i][1] = N/2 + 1 + i;}for (i = 1; i <= N; ++i)for (j = 1; j <= N; ++j)plate[i][j] = 1;apple[0] = rand()%N + 1; apple[1] = rand()%N + 1;apple[2] = 1;for (i = 0; i < N + 2; ++i){gotoxy(0, i);for (j = 0; j < N + 2; ++j){switch (plate[i][j]){case 0:color(12);printf("□");color(11); continue;case 1: printf("■"); continue;default: ;}}putchar('\n');}for (i = 0; i < (*len); ++i){gotoxy(snake[i][1] * 2, snake[i][0]);printf("★");}putchar('\n');*snake_x = snake;}void Manual(){gotoxy(N+30,2);color(10);printf("按W S A D 移动方向");gotoxy(N+30,4);printf("按space 键暂停");gotoxy(N+30,8);printf("历史最高分为: ");color(12);gotoxy(N+44,8);printf("%d",score[1]*10);color(11);gotoxy(N+30,12);printf("你此刻得分为: 0");}int File_in() //取记录的分数{FILE *fp;if((fp = fopen("C:\\tcs.txt","a+")) == NULL){gotoxy(N+18, N+2);printf("文件不能打开\n");exit(0);}if((score[1] = fgetc(fp)) != EOF);elsescore[1] = 0;return 0;}int File_out() //存数据{FILE *fp;if(score[1] > score[0]){gotoxy(10,10);color(12);puts("闯关失败加油耶");gotoxy(0,N+2);return 0;}if((fp = fopen("C:\\tcs.txt","w+")) == NULL){printf("文件不能打开\n");exit(0);}if(fputc(--score[0],fp)==EOF)printf("输出失败\n");gotoxy(10,10);puts("恭喜您打破记录");gotoxy(0,N+2);return 0;}void Free(char **snake, int len) //释放空间{int i;for (i = 0; i < len; ++i)free(snake[i]);free(snake);}int main(void){int len;char ch = 'g';char a[N+2][N+2] = {{0}};char **snake;srand((unsigned)time(NULL));color(11);File_in();init(a, &snake, &len);Manual();while (ch != 0x1B) // 按ESC 终止{Draw(snake, len);if (!apple[2]) {apple[0] = rand()%N + 1;apple[1] = rand()%N + 1;apple[2] = 1;}Sleep(200-score[3]*10);setbuf(stdin, NULL);if (kbhit()){gotoxy(0, N+2);ch = getche();}snake = Move(snake, ch, &len);if (Block(snake[0])==1){gotoxy(N+2, N+2);puts("你输了");File_out();Free(snake, len);getche();exit(0);}}Free(snake, len);exit(0);}。
学生校园游戏贪吃蛇教案

学生校园游戏贪吃蛇教案一、教学目标。
1. 了解贪吃蛇游戏的历史和规则;2. 掌握贪吃蛇游戏的基本操作方法;3. 提高学生的反应能力和操作技巧;4. 增强学生的团队合作意识。
二、教学重点和难点。
重点,掌握贪吃蛇游戏的基本操作方法和规则。
难点,提高学生的反应能力和操作技巧。
三、教学准备。
1. 电脑或手机设备;2. 安装了贪吃蛇游戏的设备;3. 教师准备好相关的课件和教学素材。
四、教学过程。
1. 导入。
教师向学生介绍贪吃蛇游戏的历史和规则,让学生了解贪吃蛇游戏的起源和发展历程,激发学生对游戏的兴趣。
2. 游戏规则。
向学生介绍贪吃蛇游戏的规则,控制一条蛇在游戏界面上不断移动,躲避障碍物和自己的身体,吃到食物可以让蛇变长,游戏的目标是尽可能多地吃到食物,直到蛇撞到障碍物或自己的身体为止。
3. 操作方法。
教师向学生演示贪吃蛇游戏的基本操作方法,包括上、下、左、右四个方向键的操作,以及如何控制蛇的移动方向。
4. 分组游戏。
将学生分成若干小组,每组安排一台设备进行游戏。
让学生在规定的时间内进行游戏比赛,看哪个小组的蛇能吃到更多的食物。
5. 游戏分析。
比赛结束后,教师带领学生分析比赛结果,让学生总结出获胜的小组的游戏策略和技巧,以及失败的小组在游戏中犯的错误。
6. 团队合作。
让学生重新分组,每个小组由两名学生合作进行游戏,看哪个小组能在游戏中更好地配合,使蛇吃到更多的食物。
7. 总结。
教师对整个游戏过程进行总结,鼓励学生在课余时间多进行练习,提高游戏的技巧和反应能力。
五、课堂小结。
通过本节课的学习,学生们对贪吃蛇游戏有了更深入的了解,掌握了游戏的基本规则和操作方法,并且在游戏中提高了反应能力和团队合作意识。
六、作业布置。
要求学生在课余时间继续进行贪吃蛇游戏的练习,并且写一篇游戏心得体会,分享自己在游戏中的收获和体会。
七、教学反思。
本节课通过贪吃蛇游戏的教学,不仅让学生在游戏中得到放松和娱乐,同时也锻炼了学生的反应能力和团队合作意识,达到了预期的教学目标。
c语言贪吃蛇课程设计

c语言贪吃蛇课程设计一、教学目标本课程旨在通过学习C语言实现贪吃蛇游戏,让学生掌握C语言编程的基本技能,培养学生的逻辑思维能力和问题解决能力。
具体的教学目标如下:1.理解C语言的基本语法和数据类型。
2.掌握C语言的运算符和表达式。
3.学习C语言的控制结构,包括条件语句和循环语句。
4.了解C语言的函数和数组。
5.能够使用C语言编写简单的程序。
6.能够使用C语言实现贪吃蛇游戏的基本功能,包括蛇的移动、食物的生成和 collision检测。
7.能够优化代码,提高游戏的性能和可读性。
情感态度价值观目标:1.培养学生的团队合作意识和沟通能力,通过小组合作完成游戏项目。
2.培养学生的创新思维和问题解决能力,鼓励学生进行游戏的创意设计和优化。
3.培养学生的学习兴趣和自信心,通过完成游戏项目感受到编程的乐趣和成就感。
二、教学内容根据课程目标,本课程的教学内容主要包括C语言的基本语法和数据类型、运算符和表达式、控制结构、函数和数组。
具体的教学大纲如下:1.第一章:C语言概述•C语言的发展历史和特点•C语言的基本语法和结构2.第二章:数据类型和运算符•基本数据类型和变量•运算符和表达式3.第三章:控制结构4.第四章:函数和数组•函数的定义和调用•一维数组和多维数组5.第五章:贪吃蛇游戏实现•蛇的移动和食物的生成•collision检测和游戏结束条件•游戏界面的设计和美化三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法。
1.讲授法:通过教师的讲解和演示,向学生传授C语言的基本语法和编程技巧。
2.讨论法:通过小组讨论和分享,培养学生的团队合作意识和沟通能力。
3.案例分析法:通过分析具体的贪吃蛇游戏案例,引导学生思考和解决问题。
4.实验法:通过编写代码和调试程序,培养学生的动手能力和问题解决能力。
四、教学资源为了支持教学内容和教学方法的实施,本课程将准备以下教学资源:1.教材:《C语言程序设计》2.参考书:《C语言编程实例解析》3.多媒体资料:PPT课件、视频教程4.实验设备:计算机、编程环境(如Visual Studio、Code::Blocks等)通过以上教学资源的使用,将丰富学生的学习体验,提高学生的学习效果。
贪吃蛇课程设计报告 2

基于VC#.NET的贪吃蛇游戏的目录1.实验目的………………………………………………………………2.实验任务与要求………………………………………………………2.1实验内容………………………………………………………………2.2实验要求………………………………………………………………2.3实验环境………………………………………………………………3.设计方案…………………………………………………………………3.1程序功能………………………………………………………………3.2设计思想………………………………………………………………3.3设计总体流程图………………………………………………………3.4设计的具体实现………………………………………………………4.程序测试…………………………………………………………………4.1测试内容与结果………………………………………………………4.2程序运行效果图………………………………………………………5.实验总结………………………………………………………………参考文献……………………………………………………………………附录……………………………………………………………………………附录A:主要源程序………………………………………………………附录B:软件使用说明书…………………………………………………1.实验目的:●复习、巩固VC#.NET的基础知识,进一步加深对VC#.NET技术的理解和掌握;●课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。
●培养学生在项目开发中团队合作精神、创新意识及能力2.实验任务与要求2.1 实验内容贪吃蛇游戏开发,首先它可以为大家提供一种当前比较流行的休闲小游戏。
贪吃蛇是家喻户晓的益智类小游戏,选择这个题目一是为了将自己的所学知识加以运用,二是一直以来贪吃蛇这个游戏就深深地吸引着很多人,它的制作方法对于很多同学而言都是很神秘的。
java课程设计贪吃蛇小程序 附代码(2)

public void keyPressed(KeyEvent e) {//按键响应
int keyCode=e.getKeyCode();
if(stat==1) switch(keyCode){
case KeyEvent.VK_UP:if(direction!=SOUTH) direction=NORTH;break;
游戏主界面模块:
游戏的主界面是进入游戏后,能够给玩家第一感官的部分,主要包括游戏图形区域界面、游戏的速度选择更新界面、新生方块的预览、游戏速度控制按钮、暂停游戏按钮、重新开始游戏按钮以及游戏排行榜按钮。从很大程度上决定了玩家对游戏的兴趣问题,因此,游戏的主界面应该力求美观,爽心悦目。
游戏控制模块:
这个模块是游戏的中心环节,主要完成控制游戏的速度、暂停、重新开始等功能。为了能够给玩家一个很好的游戏环境,这部分应该做到易懂、易操作。
本设计所开发的是基于Java的一个贪吃蛇游戏软件,主要实现游戏的速度控制、游戏的暂停、游戏的退出等功能,分为: 游戏主界面模块、游戏控制模块以二个模块。
性能:
本软件在设计方面本着方便、实用及娱乐性高的宗旨,在对界面进行设计的过程中,始终坚持清晰明了,在性能方面能够实现效率高,不易出错等优点。
自定义类说明
图3-1程序运行图
当蛇没有吃到食物且碰到边界或碰撞到自己的身体时,游戏结束,此时得分为0。如果想重新开始即按ENTER或S键,运行结果如图3-2所示:
图3-2程序结束图
程序异常处理
在蛇的运行线程过程中,当蛇撞到墙或自己的身体时,将抛出一个Exception类的异常对象,然后使用try-catch去捕捉这个异常,
2、课程设计的具体要求:
(1)界面美观大方,操作简单便捷,按键布局美观。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include<stdio.h>#include <conio.h>#include<stdlib.h>#include<windows.h>#include <time.h>#define LEN 30#define WID 25int snake[LEN][WID]={0};char snake_dir = 'a';//记录蛇头的移动方向int snake_point_x,snake_point_y;//记录蛇头的位置int snake_len=3;//记录蛇的长度clock_t now_time;//记录当前时间int waiting_time=300;//记录自动移动的时间间隔int eat_apple = 1; //吃到苹果表示为0int bake_raod = 0; //背景颜色int level=1;int score=-1;int apple=-1;HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);void Set_Color(int color) //设置颜色{SetConsoleTextAttribute(hConsole, color);}void hid_guanbiao(){//隐藏光标CONSOLE_CURSOR_INFO cursor_info={1 , 0};SetConsoleCursorInfo(hConsole, &cursor_info);}void goto_point(int x,int y){//设置光标位置COORD point;point.X=x;point.Y=y;SetConsoleCursorPosition(hConsole , point);}void game_over() //蛇死了{goto_point(29,6);printf("GRAM OVER!!");Sleep(1000);system("pause > nul");exit(0);}void clear_snake(){//擦除贪吃蛇int x,y;for(y = 0;y < WID; y++){for(x = 0;x < LEN;x++){goto_point(x*2 , y);if(snake[x][y]==snake_len)printf(" ");}}}void rand_apple(){ //随机产生苹果int x,y;do{x=(rand()%(LEN-2))+1;y=(rand()%(WID-2))+1;}while(snake[x][y]);snake[x][y]=-1;goto_point(x*2,y);Set_Color(rand()%8+1);printf("●");eat_apple=0;}void Pri_News() //打印信息{Set_Color(0xe);goto_point(73,4);score += level;printf("%3d", score);goto_point(73, 6);printf("%3d", level);goto_point(73, 8);printf("%3d",snake_len);goto_point(73, 10);printf("0.%dm/s", 100-waiting_time/10);goto_point(75, 12);printf("%d", apple);}void level_snake() //设置等级系统、速度{if((apple-1)/10==level){++level;if(waiting_time>50)waiting_time-=50;else if(waiting_time>20)waiting_time-=20;else if(waiting_time>10)waiting_time-=10;elsewaiting_time-=1;}}void move_snake()// 让蛇动起来{int x,y;for(x=0;x<LEN;x++){ // 先标记蛇头for(y=0;y<WID;y++){if(snake[x][y]==1){switch(snake_dir){ // 根据新的蛇头方向标记蛇头case 'w':if(y!=1)//snake_point_y=WID-2;//elsesnake_point_y=y-1;snake_point_x=x;break;case 's':if(y!=WID-2)//snake_point_y=1;// elsesnake_point_y=y+1;snake_point_x=x;break;case 'a':if(x!=1)//snake_point_x=LEN-2;//elsesnake_point_x=x-1;snake_point_y=y;break;case 'd':if(x!=LEN-2)// snake_point_x=1;// elsesnake_point_x=x+1;snake_point_y=y;break;default:break;}}}}if(snake[snake_point_x][snake_point_y]!=0&& snake[snake_point_x][snake_point_y]!=-1) game_over();if(snake_point_x==0||snake_point_x==30||snake_point_y==0||snake_point_y==25)game_over(); //蛇死啦;if(snake[snake_point_x][snake_point_y]<0){//吃苹果++snake_len;eat_apple = 1;}for(x=0;x<LEN;x++){//处理蛇尾for(y=0;y<WID;y++){if(snake[x][y]>0){if( snake[x][y]!=snake_len)snake[x][y]+=1;elsesnake[x][y]=0;}}}snake[snake_point_x][snake_point_y] = 1; //处理蛇头}void print_snake(){int x,y,color;for(y=0;y<WID;y++){for(x=0;x<LEN;x++){if(snake[x][y] == 1){ //蛇头Set_Color(0xe);goto_point(x*2, y);printf("◆");}if(snake[x][y] == 2){ //蛇脖color=rand()%15+1;if(color==14)color-=rand()%13+1;Set_Color(color);goto_point(x*2,y);printf("●");}if(snake[x][y] == snake_len){goto_point(x*2, y);Set_Color(0xe);printf("●");}}}}void get_input() //控制蛇的移动方向{if(kbhit()){switch(getch()){case 'w':case 72 :if(snake_dir != 's') snake_dir = 'w';break;case 's':case 80 :if(snake_dir != 'w') snake_dir = 's';break;case 'a':case 75 :if(snake_dir != 'd') snake_dir = 'a';break;case 'd':case 77 :if(snake_dir != 'a') snake_dir = 'd';break;default:break;}}if(clock() - now_time > waiting_time){//蛇到时间自动行走clear_snake();move_snake();print_snake();now_time =clock();}}void set_out(){ //边框int i,j;Set_Color(6);for(i=0;i<LEN;i++){goto_point(i*2,0);//snake[i][0]=1;printf("▼");goto_point(i*2,WID-1);//snake[i][WID-1]=1;printf("▼");}for(i=5;i<LEN/2;i++){goto_point(i*2,0);printf("▼");goto_point(i*2,(WID-1)/2);printf("▼");}for(j=0;j<WID;j++){goto_point(0,j);//snake[0][j]=1;printf("▼");goto_point(2*(LEN-1),j);//snake[LEN-1][j]=1;printf("▼");}}void inset(){char str[1001];system("color 0c"); //初始化system("title:贪吃蛇宝宝");system("mode con: cols=80 lines=25");hid_guanbiao();goto_point(61 , 2);printf("You name:");scanf("%s",&str);goto_point(61 , 4);printf("You Score:");goto_point(61 , 6);printf("You Level:");goto_point(61 , 8);printf("The length:");goto_point(61 ,10);printf("The speed:");goto_point(61 ,12);printf("Eated apple:");int i;for(i = 0 ;i < snake_len;i++){snake[10+i][15]=i+1; // 生成蛇}int x,y; //打印蛇for(y = 0;y < WID; y++){for(x = 0;x < LEN; x++){Set_Color(snake[x][y]+bake_raod); // 设置背景颜色goto_point(x*2 , y);printf("■");}}set_out();}void jm() // 初始化{ system("cls");system("color 0d");char a[10];goto_point(25,10);printf("组长:杨帆组员:曹喜平张轶徐晓亮");printf("\n");printf(" ---------------------------------\n");printf(" 请输入您的名字,按enter进入。