📅  最后修改于: 2023-12-03 15:00:11.910000             🧑  作者: Mango
在C语言中,可以很方便地实现数字猜谜游戏,游戏规则如下:
下面是一个简单的示例代码实现:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int target, guess, num_guesses = 0;
char play_again = 'y';
srand(time(NULL)); // 用当前时间初始化随机数种子
while (play_again == 'y') { // 只要玩家选择继续游戏,就一直进行
// 生成随机数
target = rand() % 100 + 1;
// 提示玩家猜测范围
printf("I'm thinking of a number between 1 and 100.\n");
printf("Try to guess what it is!\n");
// 开始猜测
while (1) {
printf("\nEnter your guess: ");
scanf("%d", &guess);
++num_guesses;
// 判断大小关系
if (guess < target)
printf("Your guess is too low.\n");
else if (guess > target)
printf("Your guess is too high.\n");
else {
// 猜中
printf("Congratulations, you guessed it in %d tries!\n", num_guesses);
break;
}
}
// 询问是否继续游戏
printf("\nDo you want to play again? (y/n) ");
scanf(" %c", &play_again);
num_guesses = 0;
}
printf("Thanks for playing. Goodbye!");
return 0;
}
该代码使用了rand()
函数来生成随机数,以及srand()
函数来初始化随机数种子。在每次玩家猜中或者选择结束游戏后,重置了num_guesses
计数器。
此外,为了确保玩家只能输入'y'和'n'两个字符,scanf()
函数前加了一个空格,避免输入缓冲区中的换行符对下一次输入造成影响。
以上就是C中实现数字猜谜游戏的一个简单示例。可以根据实际需要进行修改或改进,增加提示信息、背景音乐等元素,使游戏更加有趣。