引入
猜数字游戏:先输入 2 个不超过 100 的正整数,分别是被猜数 mynumber 和允许猜测的最大次数 n,再输入你所猜的数 yournumber,与被猜数 mynumber 进行比较,若相等,显示猜中,;若不等,显示与被猜数的大小关系, 最多允许猜 n 次。如果 1 次就猜出该数,提示“Bingo!”;如果 3 次以内猜到该 数,则提示“Lucky You!” ;如果超过 3 次但不超过 n 次猜到该数,则提示“Good Guess!”;如果超过 n 次都没有猜到,则提示“Game Over”;如果在到达 n 次之 前,用户输入了一个负数,也输出“Game Over”,并结束程序。试编写相应程序
分析
其实这题执行循环输入猜的数字,然后用if来控制打印结果
代码
#include <stdio.h>
int main(){
/**
猜数字游戏:先输入 2 个不超过 100 的正整数,
分别是被猜数 mynumber 和允许猜测的最大次数 n,再输入你所猜的数 yournumber,
与被猜数 mynumber 进行比较,若相等,显示猜中,;若不等,显示与被猜数的大小关系,
最多允许猜 n 次。如果 1 次就猜出该数,提示“Bingo!”;
如果 3 次以内猜到该 数,则提示“Lucky You!” ;
如果超过 3 次但不超过 n 次猜到该数,则提示“Good Guess!”;
如果超过 n 次都没有猜到,则提示“Game Over”;
如果在到达 n 次之 前,用户输入了一个负数,也输出“Game Over”,并结束程序。试编写相应程序。
*/
int mynumber,n;
scanf("%d%d",&mynumber,&n);
//需要你猜的数
int yournumber;
//猜数
int i;
for(i = 1; i <= n; i++){
//输入你猜的数
scanf("%d",&yournumber);
if(yournumber == mynumber && i == 1){
printf("Bingo!\n");
break;
}
if(yournumber == mynumber && i > 1 && i <= 3){
printf("Lucky You!\n");
break;
}
if(yournumber == mynumber && i >= 3 && i <= n){
printf("Good Guess!\n");
break;
}
if(yournumber < 0 || mynumber < 0 ){
printf("Game Over!\n");
break;
}
if(yournumber < mynumber){
printf("您输入的数小了! 你还有%d次机会\n",n-i);
}
if(yournumber > mynumber){
printf("您输入的数大了! 你还有%d次机会\n",n-i);
}
if(i == n){
printf("Game Over!");
}
}
return 0;
}