/*-----------
用户从键盘输入4位不重复的数,来匹配计算机给出的4位随机数,
若数字和位置均等同,表示用户赢了。每猜一次,计算机均给出提示信息(x,y),x表示数字、
位置都匹配的个数;y表示数字匹配但位置不匹配的个数。
-------------*/
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int j=0;
int main()
{
int a,b,d[4],s[4],record[4];
srand(time(NULL));
bb:a=rand();
if(a<1000 && 9999<a)
goto bb;
for(int i=0;i<4;i++)
{
d[i]=a%10;
a=a/10;
}
aa:int x=0,y=0;
j++;
printf("请输入一个4位的正整数");
scanf("%d",&b);
for(int q=0;q<4;q++)
{
s[q]=b%10;
b=b/10;
}
for(int w=0;w<4;w++)
{
if(d[w]==s[w])
{
x++;
record[w]=0;
}
else
record[w]=1;
}
for(int e=0;e<4;e++)
{
for(int r=0;r<4;r++)
{
if(record[r]==0)
continue;
else
{
if(record[e]==0)
continue;
if(s[r]==d[e])
{
y++;
break;
}
}
}
}
if(x==4)
printf("你猜对了!你一共猜了%d次\n",j);
else
{
printf("数字,位置都匹配的个数X=%d,数字匹配但位置不匹配的个数y=%d\n",x,y);
goto aa;
}
return 0;
}
用户从键盘输入4位不重复的数,来匹配计算机给出的4位随机数,
若数字和位置均等同,表示用户赢了。每猜一次,计算机均给出提示信息(x,y),x表示数字、
位置都匹配的个数;y表示数字匹配但位置不匹配的个数。
-------------*/
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int j=0;
int main()
{
int a,b,d[4],s[4],record[4];
srand(time(NULL));
bb:a=rand();
if(a<1000 && 9999<a)
goto bb;
for(int i=0;i<4;i++)
{
d[i]=a%10;
a=a/10;
}
aa:int x=0,y=0;
j++;
printf("请输入一个4位的正整数");
scanf("%d",&b);
for(int q=0;q<4;q++)
{
s[q]=b%10;
b=b/10;
}
for(int w=0;w<4;w++)
{
if(d[w]==s[w])
{
x++;
record[w]=0;
}
else
record[w]=1;
}
for(int e=0;e<4;e++)
{
for(int r=0;r<4;r++)
{
if(record[r]==0)
continue;
else
{
if(record[e]==0)
continue;
if(s[r]==d[e])
{
y++;
break;
}
}
}
}
if(x==4)
printf("你猜对了!你一共猜了%d次\n",j);
else
{
printf("数字,位置都匹配的个数X=%d,数字匹配但位置不匹配的个数y=%d\n",x,y);
goto aa;
}
return 0;
}