猜数字游戏
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2、猜数字游戏。游戏随机生成4个互不相同的1位数,接受用户输入,根据用户输入输出“mAnB”的结果。A表示数字和位置都正确,B表示数字正确,位置不正确。例如随机数为“1234”,用户输入为“1435”,显示“2A1B”。
#include
#include
#include
#define N 4
#define NUM 8
void detect(char s[])
{
int i,j,num;
int a,b;
char ch[N];
for(num=0;num { a=b=0; printf("This is the %d chance:",num+1); for(i=0;i { ch[i]=getch(); if(ch[i]>='0'&&ch[i]<='9') { for(j=0;j if(ch[i]==ch[j]) break; if(j else { putchar(ch[i]); for(j=0;j { if(ch[i]==s[j]) if(i==j) a++; else b++; } } } else i--; } printf("%dA%dB\n",a,b); if(a==N) { printf("You are right!\n"); break; } } if(num==NUM) printf("Sorry,the right answer is:%sd\n",s); } main() { int i,j; char s[N+1]; srand(time(0)); for(i=0;i { s[i]=rand()%10; for(j=0;j if(s[i]==s[j]) break; if(j else { s[i]+='0'; putchar('*'); } } s[i]='\0'; printf("\nYou have%d chances\n",NUM); detect(s); }