C语言猜数字游戏(附带源码)
所谓猜数字游戏,指的是随机生成一个 1~9 之间的任意整数作为被猜数字,由玩家尝试猜出这个数字。游戏过程中,玩家每猜一个数字,游戏会告知他是猜大了还是猜小了,直到猜中为止,同时游戏会统计猜的次数。
接下来,我们将带领大家用 C 语言标准库中的输入输出函数、随机函数等,编程实现一个猜数字游戏。
本例中,标准输入输出函数、随机函数和循环选择组合,可以完成很多有趣的题目。本范例中通过字符类型判断,对用户错误的输入提示得更准确。
声明:《C语言系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。
接下来,我们将带领大家用 C 语言标准库中的输入输出函数、随机函数等,编程实现一个猜数字游戏。
猜数字游戏的实现代码
如下为实现猜数字游戏的 C 语言程序:#include <stdio.h> /*包含标准输入输出头文件*/ #include <stdlib.h> #include <string.h> #include <ctype.h> #include <time.h> #define MAX 9 int main() { int b = 0; int n; /*所猜的数字*/ int sum = 0; /*猜数的次数*/ char array[10]; int num; srand((unsigned)time(NULL)); /*随机数播种函数*/ num = 1 + rand() % MAX; /*设定随机数*/ printf("随机数已经准备好,范围1 ~ 9.\n"); while (!b) /*猜不对就一直循环*/ { sum += 1; printf("请输入你猜的数字\n"); scanf("%s", array); if (strlen(array) == 1) { if (isalpha(*array) != 0) printf("请输入数字,不是字母\n"); else if (ispunct(*array) != 0) printf("请输入数字,不是标点符号\n"); else { n = atoi(array); if (n == num) { b = 1; printf("你太聪明了!你共猜了%d次\n", sum); } else if (n < num && n >= 0) printf("你猜小了!继续努力!\n"); else if (n > num && n <= 9) printf("你猜大了!继续努力!\n"); } } else printf("数字范围是1 ~ 9,你输入的数据不对!\n"); } return 0; }运行结果:
随机数已经准备好,范围1 ~ 9.
请输入你猜的数字
a
请输入数字,不是字母
请输入你猜的数字
/
请输入数字,不是标点符号
请输入你猜的数字
8
你猜小了!继续努力!
请输入你猜的数字
5
你猜小了!继续努力!
请输入你猜的数字
10
数字范围是1 ~ 9,你输入的数据不对!
请输入你猜的数字
1
你猜小了!继续努力!
请输入你猜的数字
9
你太聪明了!你共猜了7次
本例中,标准输入输出函数、随机函数和循环选择组合,可以完成很多有趣的题目。本范例中通过字符类型判断,对用户错误的输入提示得更准确。
声明:《C语言系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。