第一范文网 - 专业文章范例文档资料分享平台

C语言贪吃蛇实验报告

来源:用户分享 时间:2025/11/16 18:14:42 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

运动速度*/ }

break; case 27: exit(0); default:

switch(key1){ case 72:

while(!kbhit()&&judgeGO(snake)) {

upmove(snake);/*上键函数控制蛇向上运动*/ draw(snake); }

break; case 80:

while(!kbhit()&&judgeGO(snake)) {

downmove(snake);/*下键函数控制蛇向下运动*/ draw(snake); }

break; case 75:

while(!kbhit()&&judgeGO(snake)) {

leftmove(snake);/*左键函数控制蛇向左运动*/ draw(snake); }

break; case 77:

while(!kbhit()&&judgeGO(snake) ) {

rightmove(snake);/*右键函数控制蛇蛇向右运动*/ draw(snake); }

break; } } }

/*---------------------------------------------------*/ /*------------是否继续游戏---------------------------*/ gameover();/*判断游戏是否继续的函数*/ if(getch()==27) exit(0); else {

marksn();

12

getch(); }

/*---------------------------------------------------*/ }

/*-------------------------------------------------*/

/*-----------上下左右移动神马的--------------------*/

void downmove(int (*sna)[17])/*控制蛇向下运动的函数*/ {

int x=0,y=0,mark=0; for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(sna[x][y]!=0&&sna[x][y]!=HEAD&&sna[x][y]!=FOOD) {

sna[x][y]=sna[x][y]-1;//前面已经说了,12345....标记法,减去1的话,除了头部以外其他的就移动了。 } } }

for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(mark

if(sna[x][y]!=HEAD&&sna[x][y]!=FOOD)

mark=sna[x][y];//这个是求头部之后的值。 } }

for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(sna[x][y]==HEAD) {

sna[x+1][y]=HEAD;//头部的移动, sna[x][y]=mark+1;//头部的赋值。 return; } } } }

void upmove(int (*sna)[17])/*控制蛇向上运动的函数*/ {

int x=0,y=0,mark=0; for(x=0;x<16;x++)

13

{

for(y=0;y<16;y++) {

if(sna[x][y]!=0&&sna[x][y]!=HEAD&&sna[x][y]!=FOOD) {

sna[x][y]=sna[x][y]-1; } } }

for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(mark

if(sna[x][y]!=HEAD&&sna[x][y]!=FOOD) mark=sna[x][y]; } }

for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(sna[x][y]==HEAD) {

sna[x-1][y]=HEAD; sna[x][y]=mark+1; return; } } } }

void leftmove(int (*sna)[17])/*控制蛇向左运动的函数*/ {

int x=0,y=0,mark=0; for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(sna[x][y]!=0&&sna[x][y]!=HEAD&&sna[x][y]!=FOOD) {

sna[x][y]=sna[x][y]-1; } } }

for(x=0;x<16;x++) {

14

for(y=0;y<16;y++) {

if(mark

if(sna[x][y]!=HEAD&&sna[x][y]!=FOOD) mark=sna[x][y]; } }

for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(sna[x][y]==HEAD) {

sna[x][y-1]=HEAD; sna[x][y]=mark+1; return; } } } }

void rightmove(int (*sna)[17])/*控制蛇向右运动的函数*/ {

int x=0,y=0,mark=0; for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(sna[x][y]!=0&&sna[x][y]!=HEAD&&sna[x][y]!=FOOD) {

sna[x][y]=sna[x][y]-1; } } }

for(x=0;x<16;x++) {

for(y=0;y<16;y++) {

if(mark

if(sna[x][y]!=HEAD&&sna[x][y]!=FOOD) mark=sna[x][y]; } }

for(x=0;x<16;x++) {

for(y=0;y<16;y++)

15

搜索更多关于: C语言贪吃蛇实验报告 的文档
C语言贪吃蛇实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c3hcvr4a87r3blza1bsx8_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top