#include<stdio.h>
#include<time.h>
int main(void){
int systemNum[4];
int userNum[4];
int i,j,c=0;
/*do{
srand(time(NULL));
for(i=0;i<4;i++){
systemNum[i]=rand()%9+0;
}
}while(systemNum[0]==systemNum[1]||systemNum[0]==systemNum[2]||systemNum[0]==systemNum[3]||
systemNum[1]==systemNum[2]||systemNum[1]==systemNum[3]||systemNum[2]==systemNum[3]);
*/
printf("由系统随机生成一个不同的四位数,例如(1234),然后由用户输入四个不同的数字,如果输入的数字 与系统生成的数字相同并且位置相同 用 A 表示,如果数字相同位置不同用B表示,例如输入(1245)结果显示:2A1B 给用户10次输入的机会。 4A程序结束");
while(1){
srand(time(NULL));
for(i=0;i<4;i++){
systemNum[i]=rand()%9+0;
}
int count=0;
for(i=0;i<4;i++){
int j;
for(j=i+1;j<4;j++){
if(systemNum[i]==systemNum[j]){
count++;
}
}
}
if(count==0){
break;
}
}
for(i=0;i<4;i++){
// printf("%d ",systemNum[i]);
}
printf("\n");
int countNum=0;
while(1){
int countA=0;
int countB=0;
do{
//system("cls");
printf("第%d次输入四个不同的数字(0-9):",countNum+1);
for(i=0;i<4;i++){
scanf("%d",&userNum[i]);
}
if(userNum[0]==userNum[1]||userNum[0]==userNum[2]||userNum[0]==userNum[3]||
userNum[1]==userNum[2]||userNum[1]==userNum[3]||userNum[2]==userNum[3]){
printf("sb 不能输入重复的数字");
}
//getch();
}while(userNum[0]==userNum[1]||userNum[0]==userNum[2]||userNum[0]==userNum[3]||
userNum[1]==userNum[2]||userNum[1]==userNum[3]||userNum[2]==userNum[3]);
//系统每个数都于用户输入的每一个数比较,所以循环4次
for(i=0;i<4;i++){
//系统的每一个数字分别与用户输入的数字挨个比较
for(j=0;j<4;j++){
if(systemNum[i]==userNum[j]){
if(i==j){
countA++;
}else{
countB++;
}
}
}
}
printf("%dA%dB\n",countA,countB);
if(countA==4){
printf("恭喜你,猜对了!");
break;
}else{
countNum++;
}
if(countNum==10){
int b;
printf("你的十次机会用完啦 \n 请按1继续 请按其他键结束 \n");
scanf("%d",&b);
if(b==1){
system("cls");
countNum=0;
continue;
} else{
break;
}
}
}
getch ();
return 0;
}