当前位置:三九宝宝网 → 宝宝教育 → 教学论文 → 正文

用C语言设计贪食蛇程序要求代码后要有注释

更新:02-21 整理:39baobao.com
字体:

[用数据结构C语言版内容设计一个模拟计算器的程序要求能对包含加]加法: #include <stdio.h> #include <stdlib.h> int main() { int a,b,c; a=1; b=2; c=a+b; printf("%d",c) system("pause") return 0; } 减法、乘法、除法都一样。把int(整数)变...+阅读

贪吃蛇 #define N 200 #include #include #include #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b int i,key; int score=0;/*得分*/ int gamespeed=50000;/*游戏速度自己调整*/ struct Food { int x;/*食物的横坐标*/ int y;/*食物的纵坐标*/ int yes;/*判断是否要出现食物的变量*/ }food;/*食物的结构体*/ struct Snake { int x[N]; int y[N]; int node;/*蛇的节数*/ int direction;/*蛇移动方向*/ int life;/* 蛇的生命,0活着,1死亡*/ }snake; void Init(void);/*图形驱动*/ void Close(void);/*图形结束*/ void DrawK(void);/*开始画面*/ void GameOver(void);/*结束游戏*/ void GamePlay(void);/*玩游戏具体过程*/ void PrScore(void);/*输出成绩*/ /*主函数*/ void main(void) { Init();/*图形驱动*/ DrawK();/*开始画面*/ GamePlay();/*玩游戏具体过程*/ Close();/*图形结束*/ } /*图形驱动*/ void Init(void) { int gd=DETECT,gm; initgraph(&gd,&gm,"c:\\tc"); cleardevice(); } /*开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙*/ void DrawK(void) { /*setbkcolor(LIGHTGREEN);*/ setcolor

(11); setlinestyle(SOLID_LINE,0,THICK_WIDTH);/*设置线型*/ for(i=50;i { rectangle(i,40,i+10,49); /*上边*/ rectangle(i,451,i+10,460);/*下边*/ } for(i=40;i { rectangle(50,i,59,i+10); /*左边*/ rectangle(601,i,610,i+10);/*右边*/ } } /*玩游戏具体过程*/ void GamePlay(void) { randomize();/*随机数发生器*/ food.yes=1;/*1表示需要出现新食物,0表示已经存在食物*/ snake.life=0;/*活着*/ snake.direction=1;/*方向往右*/ snake.x[0]=100;snake.y[0]=100;/*蛇头*/ snake.x[1]=110;snake.y[1]=100; snake.node=2;/*节数*/ PrScore();/*输出得分*/ while

(1)/*可以重复玩游戏,压ESC键结束*/ { while(!kbhit())/*在没有按键的情况下,蛇自己移动身体*/ { if(food.yes==1)/*需要出现新食物*/ { food.x=rand()%400+60; food.y=rand()%350+60; while(food.x%10!=0)/*食物随机出现后必须让食物能够在整格内,这样才可以让蛇吃到*/ food.x++; while(food.y%10!=0) food.y++; food.yes=0;/*画面上有食物了*/ } if(food.yes==0)/*画面上有食物了就要显示*/ { setcolor(GREEN); rectangle(food.x,food.y,food.x+10,food.y-10); } for(i=snake.node-1;i>0;i--)/*蛇的每个环节往前移动,也就是贪吃蛇的关键算法*/ { snake.x[i]=snake.x[i-1]; snake.y[i]=snake.y[i-1]; } /*1,2,3,4表示右,左,上,下四个方向,通过这个判断来移动蛇头*/ switch(snake.direction) { case 1:snake.x[0]+=10;break; case 2: snake.x[0]-=10;break; case 3: snake.y[0]-=10;break; case 4: snake.y[0]+=10;break; } for(i=3;i { if(snake.x[i]==snake.x[0]&snake.y[i]==snake.y[0]) { GameOver();/*显示失败*/ snake.life=1; break; } } if(snake.x[0]595||snake.y[0] snake.y[0]>455)/*蛇是否撞到墙壁*/ { GameOver();/*本次游戏结束*/ snake.life=1; /*蛇死*/ } if(snake.life==1)/*以上两种判断以后,如果蛇死就跳出内循环,重新开始*/ break; if(snake.x[0]==food.x&snake.y[0]==food.y)/*吃到食物以后*/ { setcolor(0);/*把画面上的食物东西去掉*/ rectangle(food.x,food.y,food.x+10,food.y-10); snake.x[snake.node]=-20;snake.y[snake.node]=-20; /*新的一节先放在看不见的位置,下次循环就取前一节的位置*/ snake.node++;/*蛇的身体长一节*/ food.yes=1;/*画面上需要出现新的食物*/ score+=10; PrScore();/*输出新得分*/ } setcolor

(4);/*画出蛇*/ for(i=0;i rectangle(snake.x[i],snake.y[i],snake.x[i]+10, snake.y[i]-10); delay(gamespeed); setcolor(0);/*用黑色去除蛇的的最后一节*/ rectangle(snake.x[snake.node-1],snake.y[snake.node-1], snake.x[snake.node-1]+10,snake.y[snake.node-1]-10); } /*endwhile(!kbhit)*/ if(snake.life==1)/*如果蛇死就跳出循环*/ break; key=bioskey(0);/*接收按键*/ if(key==ESC)/*按ESC键退出*/ break; else if(key==UP&snake.direction!=4) /*判断是否往相反的方向移动*/ snake.direction=3; else if(key==RIGHT&snake.direction!=2) snake.direction=1; else if(key==LEFT&snake.direction!=1) snake.direction=2; else if(key==DOWN&snake.direction!=3) snake.direction=4; }/*endwhile

(1)*/ } /*游戏结束*/ void GameOver(void) { cleardevice(); PrScore(); setcolor(RED); settextstyle(0,0,4); outtextxy(200,200,"GAME OVER"); getch(); } /*输出成绩*/ void PrScore(void) { char str[10]; setfillstyle(SOLID_FILL,YELLOW); bar(50,15,220,35); setcolor

(6); settextstyle(0,0,2); sprintf(str,"score:%d",score); outtextxy(55,20,str); } /*图形结束*/ void Close(void) { getch(); closegraph(); }

本文地址:https://www.39baobao.com/show/29_44142.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

求C语言投票系统源代码代码的注释#include<stdio.h> #include<conio.h> struct hxr { int m; int point; } hxr[3]; //选票结构体 void main() { int i=0,j=0,k,temp=0; char x,y,z; struct hxr hxr[3]; for(...

C语言文本注释怎么用一般来讲有两种: 一是单行注释:直接在该行需要注释的地方加上"//"就行了。例如: "int a,b;//这是一个注释行"。那么,"//"后面的部分"这是一个注释行"就被注释掉了,不起作用,但是"//"前面的“i...

c语言程序代码注释int driver=EGA,mode=1;\\将来要设置显示模式是EGA模式1,现在只是把模式定下来 int data[]={7,3,12,6,9,5,8,11};\\数组 int i,j,xstep=70,ystep=20;\\i j是循环计数器 剩下2个...

用C语言编写的代码程序 B A可立即执行 B是一个源程序 CC语言写的代码程序肯定是源程序,B是对的,它不能立即执行,必须经过编译成可执行代码, 所以A是错误的; 如果这个源程序中不含有main函数,编译后的代码也是不可执行的,所以C是错误的; C...

急求c语言程序设计图书管理系统源代码#include#include#include#include#define N 100 //书籍的最多本数 struct book { char title[30]; int number; char author[30]; float price; int store; char borrower_...

谁能帮我注释下这个c语言程序已基本搞定。如下: #define PI 3.1415926 #define step 3 #define R 10 #include#include#include/* tc/tc++绘图功能函数必需的头文件 */ #include#includemain() /* 运动的...

用c语言编写的贪食蛇游戏这是一个成功的贪吃蛇代码(c语言编写的),希望你能看懂!慢慢看: #define N 200 #include#include#include#define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define...

求C语言写程序求源代码写一个简单程序给你参考。 用 C 写的第一个一个窗口程序 作为编程的开始,我们还是以一个Hello World来开始我们的学习之旅。代码如下: #include <stdio.h> void main() { prin...

计算机初级C语言程序设计就是设计一个简单程序的源代码#include<stdio.h> void main ( ) { double a,b,c,s,v; printf("input a,b,c:");//要有引号,不要回车 scanf("%lf%lf%lf",&a,&b,&c);//double对应%lf long float s=a*b; v=a*b*c; p...