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笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。
ICP备案:
公安联网备案: