以前用c语言编写的猜数字游戏的代码,挺简单的:
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int BT(int *a){
int i,j,n;
for(i=0;i<3;i++)
for(j=i+1;j<4;j++){
if(a[i]==a[j]&&i!=j)n=0;
}
return n;
}
main(){
int k,m,n,p,i,j;
int a[4],b[4];
printf("欢迎进入猜数字游戏,下面游戏开始:/n");
for(;;){
srand(time(NULL));
a[0]=rand()%9+1;
for(i=1;i<4;i++){
a[i]=rand()%10;
}
if(BT(a)==0)continue;
n=a[0]*1000+a[1]*100+a[2]*10+a[3];
printf("%d/n",n);
for(;;){
k=m=0;
printf("请输入一个四位的互不相同的数字:/n");
scanf("%d",&p);
b[0]=p/1000;b[1]=p/100%10;b[2]=p/10%10;b[3]=p%10;
if(BT(b)==0) printf("对不起,您的输入有错误,请重新输入:/n");
else {if(n==p) printf("恭喜您,答对了./n");
else {
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(a[i]==b[j]&&i==j) k++;
else if(a[i]==b[j]&&i!=j) m++;
printf("%dA%dB/n",k,m);
}
}
if(n==p) break;
}
printf("按#键退出游戏.");
printf("如果您想继续游戏,请按任意键。");
printf("/n");
if(getch()=='#')break;
else continue;
}
}