📄 guessnumber.c
字号:
#include "includes.h"
#define TURE 1
#define FALSE 0
int const NUM = 10;
int hash[10];
int check(int a[] , char b[])
{
int cnt_A , cnt_B;
int i;
cnt_A = 0;
cnt_B = 0;
for (i=0 ; i<4 ; i++)
{
if (a[i] == b[i]-'0')
{
cnt_A ++;
}
else
{
if (hash[b[i] - '0'] == 1)
cnt_B ++;
}
}
if (cnt_A == 4)
{
printf("success\n");
return TURE;
}
else
{
printf("%dA%dB\n",cnt_A , cnt_B);
return FALSE;
}
}
void GuessNumber ()
{
int a[4] , cnt = 0;
srand(time(NULL));
char b[10];
int temp , i;
char flag;
do
{
for (i=0 ; i<10 ; i++)
hash[i] = 0;
cnt = 0 ;
while (cnt < 4)
{
temp = rand() % 10;
if (hash[temp] ==1 )
{
continue;
}
else
{
hash[temp] = 1;
a[cnt++] = temp;
// printf("%d",temp);
}
}
printf("****");
printf("\n");
printf("你有%d次机会\n",NUM -1);
cnt = 1 ;
while (cnt < 9)
{
printf("第%d次,请输入\n",cnt);
scanf("%s",b);
if (strlen(b) < 4)
{
printf("输入有误,请重新输入\n");
continue;
}
if (check(a , b))
break;
cnt++;
}
if (cnt >= 9)
{
printf("what a pity\n");
printf("%d%d%d%d\n",a[0],a[1],a[2],a[3]);
}
printf("continue ? y : n\n");
getchar();
scanf("%c",&flag);
}while(flag == 'y' || flag == 'Y');
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -