[英]Error displaying in “Guess my number” game
我正在學習 C 編程,現在我正在嘗試編寫名為“猜我的號碼”的程序,其中玩家 1 將在一個范圍內選擇一個數字,然后玩家 2 將猜測該數字。 如果猜測次數超過 10 次,則玩家 1 獲勝。 但是,代碼程序在 10 次嘗試后中斷,並且不顯示“玩家 1 獲勝”。 任何人都可以幫助我嗎? 謝謝。
#include <stdio.h>
#include <stdbool.h>
#define boolean
int main()
{
int enternumber = -1;
int count = 0;
int maxguesses = 10;
int guessing;
int i;
bool currentguesses = false;
while (1) {
count += 1;
printf("Player 1, enter a number between 1 and 1000\n");
scanf("%d", &enternumber);
if (enternumber > 1000) {
printf("That number is out of range\n");
}
else {
printf("That number is in the range\n");
break;
}
}
printf("Player 2, you have %d tries remaining\n", maxguesses);
for (i = 0; i < maxguesses; i++) {
printf("Enter your guess\n");
scanf("%d", &guessing);
if (enternumber == guessing) {
printf("Player 2 wins.\n");
break;
}
else {
printf("Too %s.\n", enternumber < guessing ? "high" : "low");
}
}
return 0;
if (count == maxguesses) {
printf("Player 1 wins");
}
}
您應該在檢查 count == maxguesses 之后放置 return 0 語句。
#include <stdio.h>
#include <stdbool.h>
#define boolean
int main()
{
int enternumber = -1;
int count = 0;
int maxguesses = 10;
int guessing;
int i;
bool currentguesses = false;
while (1) {
count += 1;
printf("Player 1, enter a number between 1 and 1000\n");
scanf("%d", &enternumber);
if (enternumber > 1000) {
printf("That number is out of range\n");
}
else {
printf("That number is in the range\n");
break;
}
}
printf("Player 2, you have %d tries remaining\n", maxguesses);
for (i = 0; i < maxguesses; i++) {
printf("Enter your guess\n");
scanf("%d", &guessing);
if (enternumber == guessing) {
printf("Player 2 wins.\n");
break;
}
else {
printf("Too %s.\n", enternumber < guessing ? "high" : "low");
}
}
if (count == maxguesses) {
printf("Player 1 wins");
}
return 0;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.