在你的脑海中想象一个介于 1 到 100 之间的数字。然后,你的程序应该问你最少的问题,并根据你的答案确定你的数量。程序的问题格式是 Is it NN (<, =, >)?你可以用 3 种方式回答这个问题:< 表示你的数字小于计算机的猜测,= 表示程序猜对了你的数字,> 表示你的数字大于计算机的猜测。允许用户玩这个游戏任意次数。当用户准备退出时,输出平均猜测次数/游戏。
使用单独的函数来玩游戏。根据需要从 main() 重复调用该函数。
所以输出应该是这样的:
猜一个 1 到 100 之间的数字(包括两者),并准备好回答几个问题。
是 50 (<,=,>) 吗?<
是 25 (<,=,>) 吗?<
是 12 (<,=,>) 吗?>
是 18 (<,=,>) 吗?>
是 21 (<,=,>) 吗?<
是 19 (<,=,>) 吗?>
你的猜测是20
这是一场好比赛!你想再玩一次吗(y/n)?是的
猜一个 1 到 100 之间的数字(包括两者),并准备好回答几个问题。
是 50 (<,=,>) 吗?>
是 75 (<,=,>) 吗?<
是 62 (<,=,>) 吗?>
是 68 (<,=,>) 吗?>
是 71 (<,=,>) 吗?=
这是一场好比赛!
你想再玩一次吗(y/n)?n
这就是我到目前为止所拥有的。然而,函数 playGame() 甚至没有被执行。它没有任何计算就给了我 50 的值。
while ((round = 0)){
printf("How about %d", guess);
scanf("%c", &ans);
if((ans = '<')){
upper = guess;
guess = (upper+lower)/2;
}
else if ((ans = '>')){
lower = guess;
guess = (upper+lower)/2;
}
else {
round = 1;
printf("Your number is %d", guess);
}
}
return guess;
}