猜數字游戲是令游戲機隨機產生一個100以內的正整數,用戶輸入一個數對其進行猜測,需要你編寫程序自動對其與隨機產生的被猜數進行比較,並提示大了(“Too big”),還是小了(“Too small”),相等表示猜到了。如果猜到,則結束程序。程序還要求統計猜的次數,如果1次猜出該數,提示“Bingo!”;如果3次以內猜到該數,則提示“Lucky You!”;如果超過3次但是在N(>3)次以內(包括第N次)猜到該數,則提示“Good Guess!”;如果超過N次都沒有猜到,則提示“Game Over”,並結束程序。如果在到達N次之前,用戶輸入了一個負數,也輸出“Game Over”,並結束程序。
輸入格式:
輸入第一行中給出兩個不超過100的正整數,分別是游戲機產生的隨機數、以及猜測的最大次數N。最后每行給出一個用戶的輸入,直到出現負數為止。
輸出格式:
在一行中輸出每次猜測相應的結果,直到輸出猜對的結果或“Game Over”則結束。
輸入樣例:
58 4
70
50
56
58
60
-2
輸出樣例:
Too big
Too small
Too small
Good Guess!
#include <stdio.h> int main() { int rand_number, n; scanf("%d %d", &rand_number, &n);//輸入隨機數和猜的次數 int i; int m; int flag = 0; for (i = 1; i <= n; i++) { scanf("%d", &m);//輸入n個數 if (m < 0)//如果輸入的數為負數,則退出 break; if (m > rand_number)//如果猜的數大於隨機數 printf("Too big\n"); if (m < rand_number)//小於隨機數 printf("Too small\n"); if (m == rand_number)//等於隨機數 { if (i == 1)//第一次猜出 { flag = 1; printf("Bingo!\n"); break; } if (i == 2 || i == 3)//第二次或者第三次 { flag = 1; printf("Lucky You!\n"); break; } if (i > 3)//大於三次 { flag = 1; printf("Good Guess!\n"); break; } } } if (flag == 0)//如果超過n次沒有猜出 printf("Game Over\n"); return 0; }
