【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《猜数字小游戏算是一个比较经典的智力游戏》,欢迎阅读!
猜数字小游戏算是一个比较经典的智力游戏,当然这个游戏做起来比较简单,写这个程序的目的主要是为了说明如何编写一个游戏,这里有一个通用游戏编成模板,万变不离其踪,绝大多数游戏都逃脱不了这个格式: #include........ #define........ void main() {inta,b,c;
a=1; b=2; c=3; //设置初始值
while(a!='q') //循环直到退出游戏标志出现 {printf("%d",c); //相当于重画屏 a=getch(); //相应输入设备
c=a*b; //相当于重新运算变量值算法 } }
牢记这个模板格式,以后你所要做的事就是用具体的游戏代码代替模板中的相应部分。祝你好运!
#include 《conio.h》 #include 《stdio.h》 #include 《stdlib.h》 #include 《time.h》 #include 《math.h》 #define RED 4 #define GREEN 2 #define YELLOW 62 #define WHITE 63 main() {
int a=0,b,i,j,k1,k,n,times=0,guess[4],answer[4];char Q; clrscr();
textcolor(RED); for(i=1;i《=21;i++)
cprintf("\03");printf("\n"); /*做一个开头小图形*/ cprintf("\03"); textcolor(WHITE);
cprintf(" GUESS NUMBER GAME "); textcolor(RED); cprintf("\03\r\n"); for(i=1;i《=21;i++)
cprintf("\03");printf("\n"); textcolor(GREEN);
cprintf("%10c\r\n",'\01'); textcolor(YELLOW); cprintf("Times "); textcolor(GREEN);
cprintf("Guess\r\n");
for(k=0;k《4;k++) /*在0~9中随机产生4个不同的数字*/ {
Renew: srand(time(NULL)); i=rand()%10;
for(k1=0;k1《k;k1++)
if(answer[k1]==i) goto Renew; answer[k]=i; }
while(a!=4) /*当4A0B时游戏结束*/ {a=0;b=0;times++; textcolor(YELLOW); cprintf("%3d ",times); Reguess:textcolor(GREEN);
scanf("%d",&n); /*输入猜测的4个数字*/
if(n》0&&n《100||n》9999) /*如果输入的不是3位或4位数则重新输入,输入12等价于0123 */
{textcolor(1);
cprintf(" Date error!\r\n "); gotoReguess; }
if(n==0) exit(0);
for(i=0;i《4;i++)
{guess[i]=n/pow10(3-i); n%=(int)pow10(3-i); }
for(k=0;k《4;k++) {
for(i=0;i《4;i++)
if(answer[k]==guess[i]) {if(k==i) a++; else b++; } }
printf("%9c",'\032'); cprintf("%dA%dB\r\n",a,b); }
textcolor(RED);
if(times《=7) cprintf("Very Good !\r\n"); /*最后成绩评价*/ else if(times》7&×《=9) cprintf("Just so so !\r\n");
else cprintf("You are fool !\r\n");
puts("Press R to replay game,else quite game...");
Q=getch();
if(Q=='r'||Q=='R') /*重新开始游戏*/ main(); return 0; }
本文来源:https://www.wddqxz.cn/3f186dd733d4b14e85246893.html