1、由电脑自动生成一个三个位且不重叠的十六进制数;
2、用户可以猜 8 次,若累计都猜错,则游戏失败,如果猜对,即三个位 上的数字都猜对,则设计合理的规则给予用户评分;
#include <stdio.h>
#include <string.h>
int main()
{
int i=0,j,d,t=8;
char c;
char s[4] = {0};
char a[4] = {0};
srand(time(NULL));
for(i=0;i<3;i++)
{
d = rand()%16;
if(d<10)
c = d+48;
else
c = d+55;
for(j=0;j<i;j++)
if(s[i] == c)
break;
if(j==i)
s[i] = c;
else
i--;
}
while(t>0)
{
printf("第%d次猜:",9-t);
scanf("%s",a);
if(strcmp(a,s)==0)
break;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
if(a[j] == s[i])
{
if(i==j)
printf("数字%c位置正确数字正确\n",s[i]);
else
printf("数字%c位置不正确但数字正确\n",s[i]);
}
}
}
t--;
}
if(t==0)
printf("很遗憾,8次没猜对");
else
printf("恭喜第%d次猜对了",9-t);
return 0;
}