已用C++写了个c 贪吃蛇小游戏代码游戏代码,怎样把它弄进安卓手机里,使我能在手机里玩我写的c 贪吃蛇小游戏代码游戏?

求基于C++的贪吃蛇游戏完整代码,能运行出来的~~~_百度知道
求基于C++的贪吃蛇游戏完整代码,能运行出来的~~~
我有更好的答案
: point= up: ++b;
//w&#39::delete_tail(){ SnakeNode *p = } if(a==19||b==19||a==0||b==0){
//public: char game[20][20];/&#47,y;;
/void SnakeNode:; case 'a': point= case 'd': point= }}void move::get_food(){ srand((unsigned int) time(NULL)); //做种子(程序运行时间);
food_x= rand()%18+1;
food_y= rand()%18+1; f.game[food_x][food_y]= '*';}//main();int main(){ cout&&&^_^ 请使用\& w,s,a,d \&控制方向 ^_^\n\n\n&; //画框框和小蛇; f.InitFence(); head-&add_head(4,3); head-&add_head(4,4); head-&add_head(4,5); m.get_food(); f.OutputF(); while (true){
char keydown= getch(); //getch()返回键盘上读取的字符;包含头文件&conio.h&
m.change_point(keydown);
while(!kbhit()){ //判断有没有按键落下;
system(&cls&);
//清屏函数;
m.moving();
f.OutputF();
Sleep(200);
} } return 0;};void Fence:;public: void add_head(int x:get_y(){ return y,right};
/ int food_y;头结点纵坐标 switch(point){ i& &#47::change_point(char keydown){ switch(keydown){ case '//20; i++)
for(int j=0; q-&x =x;: point=add_head(a,b); SnakeNode */取得头结点横坐标 b= head-&gt,b;/画框框;void F j& q-&next =;
cout&s'get_y();20; j++)
cout&&game[i][j]&&'public: void moving(); 'iostream.h&围墙;class Fence{}int SnakeNode:: --b; break,int y); int get_x(); case '定义对象;/enum dir{ else{
tail= tail-&
tail-&gt:OutputF(){ for(int i=0; i&20.game[tail-& void get_food();};void move:;/删除尾结点; }} if(tail==head)
tail= head= NULL;)::InitFence(){ for(int i=0;/蛇结点;class SnakeNode{private: j&插入头结点: --a;
get_food(); } else{
head-&枚举变量/吃
head-&next= NULL; }}// }}/ /delete_tail(); void change_point(char);
/20; j++){
if(i==0||i==19||j==0||j==19)
game[i][j]= '*';/f对象可以在定义Fence类时定义; 且Fence类在SnakeNode类前定义;/枚举类型
// f.game[x][y]= &#39:add_head(int x,int y){ SnakeNode *q=new SnakeNode!!&&&/插入头结点;
head-&/删除尾结点;void SnakeNget_x()][tail-&gt.h&#include &add_head(a,b);把尾结点的坐标表示的'*'置为空格,*next: void InitFence();#include & } if(a==food_x && b==food_y){
&#47: 控制方向;}int SnakeNode:;move移动;class move{public: void OutputF();/显示框框;
else game[i][j]= ' ';
exit(0); q-&y =y,在VC++6.0中可以运行成功(可能还有问题)#include & int get_y(); void delete_tail();}*head=NULL, *tail =NULL;}/ a= head-&get_x();
system(&pause&}f; //判断是否撞墙;
cout&&&GAME OVER!; int food_x;time.h& q-&prior =NULL; if(head) head-&//*' case down: ++a;#include &windows.h&gt,down,left:moving(){/改变方向; i++){
for(int j=0;get_y()]= ' ':get_x(){& if(!tail) tail =prior =q; head =q一个参考实例;使用当前时间做种子.h&#include &lt
采纳率:21%
没分发毛。。。
为您推荐:
其他类似问题
您可能关注的内容
贪吃蛇游戏的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。用C语言写贪吃蛇游戏图文教程_达内C++培训
400-111-8989
用C语言写贪吃蛇游戏图文教程
之前有分享过 C语言写贪吃蛇游戏的代码,今天给大家分享一篇用C语言写出贪吃蛇游戏的教程,共分为8个步骤,有兴趣可以结合之前的代码部分跟着教程一步一步的试着用C语言写出贪吃蛇游戏的代码。
C语言写贪吃蛇游戏前的准备
1.Visual C++ 6.0
2.win7、win8、win10
C语言写贪吃蛇游戏的具体方法
1、打开C++程序
如上图所示
3、复制下列框中的程序到刚才建立的文件中
#include&stdio.h&
#include&time.h&
#include&windows.h&
#include&stdlib.h&
#define U 1
#define D 2
#define L 3&
#define R 4 //蛇的状态,U:上 ;D:下;L:左 R:右
typedef struct SNAKE //蛇身的一个节点
&struct SNAKE *
//全局变量//
int score=0,add=10;//总得分与每次吃食物得分。
int status,sleeptime=200;//每次运行的时间间隔
snake *head, *//蛇头指针,食物指针
snake *q;//遍历蛇的时候用到的指针
int endgamestatus=0; //游戏结束的情况,1:撞到墙;2:咬到自己;3:主动退出游戏。
//声明全部函数//
void Pos();
void creatMap();
void initsnake();
int biteself();
void createfood();
void cantcrosswall();
void snakemove();
void pause();
void gamecircle();
void welcometogame();
void endgame();
void gamestart();
void Pos(int x,int y)//设置光标位置
&HANDLE hO
&hOutput=GetStdHandle(STD_OUTPUT_HANDLE);
&SetConsoleCursorPosition(hOutput,pos);
void creatMap()//创建地图
&for(i=0;i&58;i+=2)//打印上下边框
&Pos(i,0);
&printf("■");
&Pos(i,26);
&printf("■");
&for(i=1;i&26;i++)//打印左右边框
&Pos(0,i);
&printf("■");&
&Pos(56,i);
&printf("■");&
void initsnake()//初始化蛇身
&tail=(snake*)malloc(sizeof(snake));//从蛇尾开始,头插法,以x,y设定开始的位置//
&tail-&x=24;
&tail-&y=5;
&tail-&next=NULL;
&for(i=1;i&=4;i++)
&head=(snake*)malloc(sizeof(snake));
&head-&next=
&head-&x=24+2*i;
&head-&y=5;
&while(tail!=NULL)//从头到为,输出蛇身
&Pos(tail-&x,tail-&y);
&printf("■");
&tail=tail-&
int biteself()//判断是否咬到了自己
&self=head-&
&while(self!=NULL)
&if(self-&x==head-&x && self-&y==head-&y)
&return 1;
&self=self-&
&return 0;
void createfood()//随机出现食物
&snake *food_1;
&srand((unsigned)time(NULL));
&food_1=(snake*)malloc(sizeof(snake));
&while((food_1-&x%2)!=0) //保证其为偶数,使得食物能与蛇头对其
&food_1-&x=rand()%52+2;
&food_1-&y=rand()%24+1;
&while(q-&next==NULL)
&if(q-&x==food_1-&x && q-&y==food_1-&y) //判断蛇身是否与食物重合
&free(food_1);
&createfood();
&Pos(food_1-&x,food_1-&y);
&food=food_1;
&printf("■");
void cantcrosswall()//不能穿墙
&if(head-&x==0 || head-&x==56 ||head-&y==0 || head-&y==26)
&endgamestatus=1;
&endgame();
void snakemove()//蛇前进,上U,下D,左L,右R
&cantcrosswall();
&nexthead=(snake*)malloc(sizeof(snake));
&if(status==U)
&nexthead-&x=head-&x;
&nexthead-&y=head-&y-1;
&if(nexthead-&x==food-&x && nexthead-&y==food-&y)//如果下一个有食物//
&nexthead-&next=
&while(q!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&score=score+
&createfood();
&else //如果没有食物//
&nexthead-&next=
&while(q-&next-&next!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&Pos(q-&next-&x,q-&next-&y);
&printf(" ");
&free(q-&next);
&q-&next=NULL;
&if(status==D)
&nexthead-&x=head-&x;
&nexthead-&y=head-&y+1;
&if(nexthead-&x==food-&x && nexthead-&y==food-&y) //有食物
&nexthead-&next=
&while(q!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&score=score+
&createfood();
&else //没有食物
&nexthead-&next=
&while(q-&next-&next!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&Pos(q-&next-&x,q-&next-&y);
&printf(" ");
&free(q-&next);
&q-&next=NULL;
&if(status==L)
&nexthead-&x=head-&x-2;
&nexthead-&y=head-&y;
&if(nexthead-&x==food-&x && nexthead-&y==food-&y)//有食物
&nexthead-&next=
&while(q!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&score=score+
&createfood();
&else //没有食物
&nexthead-&next=
&while(q-&next-&next!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&Pos(q-&next-&x,q-&next-&y);
&printf(" ");
&free(q-&next);
&q-&next=NULL;
&if(status==R)
&nexthead-&x=head-&x+2;
&nexthead-&y=head-&y;
&if(nexthead-&x==food-&x && nexthead-&y==food-&y)//有食物
&nexthead-&next=
&while(q!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&score=score+
&createfood();
&else //没有食物
&nexthead-&next=
&while(q-&next-&next!=NULL)
&Pos(q-&x,q-&y);
&printf("■");
&Pos(q-&next-&x,q-&next-&y);
&printf(" ");
&free(q-&next);
&q-&next=NULL;
&if(biteself()==1) //判断是否会咬到自己
&endgamestatus=2;
&endgame();
void pause()//暂停
&Sleep(300);
&if(GetAsyncKeyState(VK_SPACE))
void gamecircle()//控制游戏&
&Pos(64,15);
&printf("不能穿墙,不能咬到自己\n");
&Pos(64,16);
&printf("用↑.↓.←.→分别控制蛇的移动.");
&Pos(64,17);
&printf("F1 为加速,F2 为减速\n");
&Pos(64,18);
&printf("ESC :退出游戏.space:暂停游戏.");
&Pos(64,20);
&printf("c语言");
&status=R;
&Pos(64,10);
&printf("得分:%d ",score);
&Pos(64,11);
&printf("每个食物得分:%d分",add);
&if(GetAsyncKeyState(VK_UP) && status!=D)
&status=U;
&else if(GetAsyncKeyState(VK_DOWN) && status!=U)
&status=D;
&else if(GetAsyncKeyState(VK_LEFT)&& status!=R)
&status=L;
&else if(GetAsyncKeyState(VK_RIGHT)&& status!=L)
&status=R;
&else if(GetAsyncKeyState(VK_SPACE))
&else if(GetAsyncKeyState(VK_ESCAPE))
&endgamestatus=3;
&else if(GetAsyncKeyState(VK_F1))
&if(sleeptime&=50)
&sleeptime=sleeptime-30;
&add=add+2;
&if(sleeptime==320)
&add=2;//防止减到1之后再加回来有错
&else if(GetAsyncKeyState(VK_F2))
&if(sleeptime&350)
&sleeptime=sleeptime+30;
&add=add-2;
&if(sleeptime==350)
&add=1; //保证最低分为1
&Sleep(sleeptime);
&snakemove();
void welcometogame()//开始界面
&Pos(40,12);
&system("title c语言");
&printf("欢迎来到贪食蛇游戏!");
&Pos(40,25);
&system("pause");
&system("cls");
&Pos(25,12);
&printf("用↑.↓.←.→分别控制蛇的移动, F1 为加速,2 为减速\n");
&Pos(25,13);
&printf("加速将能得到更高的分数。\n");
&system("pause");
&system("cls");
void endgame()//结束游戏
&system("cls");
&Pos(24,12);
&if(endgamestatus==1)
&printf("对不起,您撞到墙了。游戏结束.");
&else if(endgamestatus==2)
&printf("对不起,您咬到自己了。游戏结束.");
&else if(endgamestatus==3)
&printf("您的已经结束了游戏。");
&Pos(24,13);
&printf("您的得分是%d\n",score);
void gamestart()//游戏初始化
&system("mode con cols=100 lines=30");
&welcometogame();
&creatMap();
&initsnake();
&createfood();
int main()
&gamestart();
&gamecircle();
&endgame();
&return 0;
7、下面就能享受游戏了
8、程序生成目录
在刚在保存的文件夹下找到Debug这个文件,双击打开,有一个贪吃蛇.exe。双击打开便能享受游戏。之前小编也分享过一篇《》的文章,有需要的同学们也可以去看看 用C语言写贪吃蛇游戏的完整代码。
达内C++培训3月份体验营课程安排
达内C++培训2018年1月训练营课程安排
C++语言诞生至今已有30多个年头了,其学习难度比其它语言都要高,这是不可否认的其学习难度主要在于它的复杂性。C++现在的使用范围比以前少了一些。
顺序:基本原理(进制转换啊什么的) --> C(学习能力强的可以从C++开始) --> API --> C++语法 --> 操作系统原理 --> MFC --> 数据库 -- 数据结构 -- 硬件 -- 领域编程(根据你自己以后的行业特点的专业性编程),最后从数据库开始可以交叉进行。
Copyright (C)
Tedu.cn All Rights Reserved 京ICP备号-56 版权所有
选择城市和中心
达内北京亦庄大学生实训基地
达内北京网络营销中心
达内北京会计中心求一个用C++语言自己编写的小游戏程序,很简单的就可以,类似贪吃蛇 猫捉老鼠之类的,急用。。。。。。_百度知道
求一个用C++语言自己编写的小游戏程序,很简单的就可以,类似贪吃蛇 猫捉老鼠之类的,急用。。。。。。
我有更好的答案
&cout&lt,按任意键结束本游戏;} else cout&真可惜;&&lt!&10-i&lt,一次都没猜对,请重新开始!&&&; cin&&z;}else{ cout&endl&&&;
cin&gt。& cout&&&按Y重新开始;&&按Y进入下一关;&&=10;i++){ if(x&&quot。&do{int i=1;srand(time(0));&&&猜数继续,请输入您要猜的数字:&;&&} else cout&&&您猜的数字低了,&&&&您还剩下&&&10-i&&&次机会。&&&endl&&endl&&&猜数继续;&&}
else if(x&int x,y;&&}
else cout&&&恭喜您猜对了;}if(i&10){ cout& cout&&&quot:&&系统已经随机生成0到999内的一个整数,请输入您要猜的数字;&&endl&本关已结束;&lt。&您猜的数字高了;&&quot!&quot:&&&猜数字游戏正式开始,进入下一关;&lt,&y){if(i==10){cout&&&您猜的数字高了,您已经没有机会。&&&endl&&&endl&&lt,按任意键结束本游戏,您最后的分数为&&&11-i&&&分!&&&endl&&cout&&&您总共有10次猜数字机会;您还剩下&quot,请把握机会:&void main(){cout&&<&y=rand()%1000;y){if(i==10){cout&&&您猜的数字低了,您已经没有机会了;x;#include &cstdlib&&
cin&&x;cin&&x;for(i=1;i&&endl&次机会;endl&&ltC++编写 猜数字小游戏#include &#include &ctime&iostream.h&&猜数开始,请输入您要猜的数字:&;&lt
为您推荐:
其他类似问题
您可能关注的内容
贪吃蛇的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)用C++怎么编写一个贪吃蛇游戏_百度知道
用C++怎么编写一个贪吃蛇游戏
我有更好的答案
com/question/.html" target="_blank">http.baidu<a href="http://zhidao://zhidao.baidu.com/question/
采纳率:41%
来自团队:
为您推荐:
其他类似问题
您可能关注的内容
贪吃蛇游戏的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 c 贪吃蛇游戏代码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信