用c语言编一个贪吃蛇,刚学C语言,想写一个贪吃蛇的代码
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
#include
#include
typedef struct snake
{
int a;
int b;
struct snake *u;
struct snake *n;
}snake,*snake1;
typedef struct food
{
int a;
int b;
}food;
void main()
{
char c,c0 = 'd';
int i,j,k,n=1,t,at;
snake p,q;
snake *dd,*dd0,*dd1,*dd2;
food f;
srand(time(NULL));
p.u = NULL;
p.n = &q;
p.a = 5;p.b = 6;q.a = 5;q.b = 5;
q.u = &p;q.n = NULL;
dd=dd2= &q;
f.a=(rand()%15+1);
f.b=(rand()%15+1);
while(1)
{
srand(time(NULL));
system("cls");
for(i = 0;i < 17;i ++)
{
for(j = 0; j < 17;j++)
{
if(i == 0 )
printf("▁");
else if(i == 16)
printf("▔");
else if(j == 0)
printf("▕");
else if(j == 16)
printf("▏");
else if(i == p.a && j == p.b)
printf("■");//头
else if(i == f.a && j == f.b)
printf("★");//就是贪吃蛇吃的那个东东
else
{
t = 0;
dd = dd2;
for(k = 0; k < n ;k++)
{
if(i == dd->a && j == dd->b)
{
printf("□");//尾巴
t = 1;
break;
}
dd = dd->u;
}
if(t == 0)
printf(" ");
}
}printf("\n");
}
at = 0;
dd =dd2;
for(i=0;i
{
if(p.a == dd->a && p.b == dd->b)
{
printf("game over!!\n");//条件,也就是碰到自己身体才会输
exit(0);
}
dd = dd->u;
}
if(p.a == f.a && p.b == f.b)
{
dd = dd2;
at =1;
f.a = (rand()%15+1);
f.b = (rand()%15+1);
for(i=0;i
{
if(f.a == dd->a && f.b == dd->b)
{
f.a = dd2->a;
f.b = dd2->b;
break;
}
}
n++;
}
if(kbhit())
{
c = getch();
dd = dd2;
if(c == 'w' && c0 != 's')
{
if(at == 1)
{
dd0 =(snake1)malloc(sizeof(snake));
dd0->a = dd2->a;dd0->b = dd2->b;
dd0->n = NULL;dd0->u = dd2;
dd2=dd0;
}
dd = dd2;
for(i = 0; i
{
dd1 = dd->u;
dd->b = dd1->b;
dd->a = dd1->a;
dd = dd->u;
}
if(p.a == 1)
p.a = 15;
else
p.a = (p.a-1)%15;
}
else if(c == 's' && c0 != 'w')
{
if(at == 1)
{
dd0 =(snake1)malloc(sizeof(snake));
dd0->a = dd2->a;dd0->b = dd2->b;
dd0->n = NULL;dd0->u = dd2;
dd2=dd0;
}
dd = dd2;
for(i = 0; i
{
dd1 = dd->u;
dd->b = dd1->b;
dd->a = dd1->a;
dd = dd->u;
}
p.a = (p.a%15)+1;
}
else if(c == 'a' && c0 != 'd')
{
if(at == 1)
{
dd0 =(snake1)malloc(sizeof(snake));
dd0->a = dd2->a;dd0->b = dd2->b;
dd0->n = NULL;dd0->u = dd2;
dd2=dd0;
}
dd = dd2;
for(i = 0; i
{
dd1 = dd->u;
dd->b = dd1->b;
dd->a = dd1->a;
dd = dd->u;
}
if(p.b == 1)
p.b = 15;
else
p.b = (p.b-1)%15;
}
用c语言编一个贪吃蛇,刚学C语言,想写一个贪吃蛇的代码相关推荐
- 怎么用c语言写一个贪吃蛇,刚学C语言,想写一个贪吃蛇的代码
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include typedef struct snake { int a; int b; stru ...
- c语言怎么写贪吃蛇,刚学C语言,想写一个贪吃蛇的代码
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include typedef struct snake { int a; int b; stru ...
- 如何用c 语言编写贪吃蛇,刚学C语言,想写一个贪吃蛇的代码
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include typedef struct snake { int a; int b; stru ...
- 用c语言做一个贪吃蛇,刚学C语言,想写一个贪吃蛇的代码
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include typedef struct snake { int a; int b; stru ...
- c语言五个整数排序,刚学c语言,老师让用if编一个五个数字从大到小的排序,有那个大神能帮我,谢谢啦...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #define N 5 int main() { int numbers[N]; int i,j,pre,k; int x = 5; i ...
- c语言五个整数排列,刚学c语言,老师让用if编一个五个数字从大到小的排序,有那个大神能帮我,谢谢啦...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #define N 5 int main() { int numbers[N]; int i,j,pre,k; int x = 5; i ...
- c语言复制后无法运行,刚学C语言,在Linux下写的代码能正常编译,复制到VC下就无法运行...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* * Hallo.c * * Created on: 2017年9月18日 * Author: text */ #include int main(v ...
- c语言写贪吃蛇什么水平_学了一些C语言,也不知道自己学到什么程度,自己想写个贪吃蛇但是写不出来,想看懂下面这个程序,求解释...
已结贴√ 问题点数:20 回复次数:3 学了一些C语言,也不知道自己学到什么程度,自己想写个贪吃蛇但是写不出来,想看懂下面这个程序,求解释 #include//基本库 #include//系统库 #i ...
- c语言计算学生成绩的合格率,分享一个几年前刚学c的一个小项目。成绩的输入,查询,排序,插...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 分享一个几年前刚学c的一个小项目.成绩的输入,查询,排序,插入,删除,修改,求平均分总分.合格率的,对于初学者可以看看这种. #include void ...
最新文章
- 把32位的SharePoint服务器场迁移到64位, 应该怎么做?
- 让echo解析反斜杠
- 有史以来最简单的三层实例(C#)
- 全国计算机等级考试三级历年真题,历年全国计算机等级考试三级(数据库技术)笔试选择真题...
- 计算机应用技术滨江计划,杭州高新区(滨江)列出干货满满的“计划表”
- 前端学习(3055):vue+element今日头条管理-反馈
- elasticsearch 问题
- twisted系列教程二–缓慢的诗
- initialization on demand holder
- vue项目报错[Vue warn]: Property “visible“ must be accessed with “$data.visible“ because properties start
- 阿里云数据库怎么使用
- 强劲大小核结构 三星将推八核处理器
- 查看和调试core文件
- Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in lib
- 软件发明专利实例_申请软件发明专利的一些案例
- Mybatis 源码解析(六) Mybatis方言支持
- RS232 RS485 串口 电平标准
- 这些常见的单词,你真的理解它们么?不要给单词加戏太多!
- Android Studio 通过wify连接手机调试
- FL Studio 21测试版更新、新功能和AI智能编曲插件
热门文章
- 干货 | XGBoost在携程搜索排序中的应用
- 决策树算法十问及经典面试问题
- PostgreSQL_case when
- Meta元宇宙OS要黄?300人研发团队解散,关闭VR/AR操作系统研发
- 综述|核心开发者全面解读Pytorch内部机制
- 为给微芯片拍照,IBM小哥用乐高拼了个电动显微镜,搭载树莓派,360度无死角拍摄...
- 轻量级卷积神经网络的设计技巧
- Dubbo基础专题——第二章(Dubbo工程简单实践)
- Redis 安装详细过程(redis基本使用(服务端和客户端)、修改密码)
- 最强六大开源轻量级人脸检测项目分析