【#第一文档网# 导语】以下是®第一文档网的小编为您整理的《猜数字小游戏算是一个比较经典的智力游戏》,欢迎阅读!
猜数字小游戏算是一个比较经典的智力游戏,当然这个游戏做起来比较简单,写这个程序的目的主要是为了说明如何编写一个游戏,这里有一个通用游戏编成模板,万变不离其踪,绝大多数游戏都逃脱不了这个格式: #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.dywdw.cn/3f186dd733d4b14e85246893.html