条件:一共有7次机会猜单词,第一行是游戏编号,输入-1结束,第二行是计算机想得数,第三行是你猜的数。
首先要说明的是我们要自顶向下的编写程序,当然并非所有程序都要如此,比如谷歌几十行的代码,但我们必须熟练的掌握一种,然后才能去学习其他的。
#include<stdio.h>
#define maxn 100
int left,chance;
char s[maxn], s2[maxn];
int win, lose;
void guess(char ch)
{
int bad = 1;
for(int i = 0;i < strlen(s);++i)
if(s[i]==ch)
{
left--;s[i]=' ';bad = 0;
}
if(bad) --chance;//注意机会减少的条件
if(!left) win = 1;
if(!chance) lose = 1;
}
int main()
{
int rnd;
while(scanf("%d%s%s",&rnd,s,s2) == 3&& rnd != -1){
printf("Round %d\n",rnd);
win = lose = 0;
left = strlen(s);
chance = 7;
for(int i = 0;i < strlen(s2);++i){
guess(s2[i]);
if(win || lose)break;
}
if(win) printf("You win.\n");
else if(lose) printf("You lose.\n");
else printf("You chickened out.\n");
}
return 0;
}