下面为完整版代码, 具体细节会在里面解释
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
//下面是游戏界面的函数,根据用户的输入决定是否开始游戏,
//返回 1 代表开始游戏, 0 代表退出游戏
int interface() {
printf("请输入数字0或1:\n");
printf("0代表结束游戏 ");
printf("1代表开始游戏\n");
printf("==================");
printf("\n");
printf("请输入数字:");
int n;
scanf("%d", &n);
if (n == 1)
return 1;
else return 0;
}
//下面就是游戏的函数,用户输入猜的数字,我们用代码告诉他猜的数字是高了..还是低了..还是猜对了
void game( int x) {
int num;
//这里我们使用 while 循环,循环条件为 1 ,在循环内设置跳出循环得到条件,
//也就是猜对的时候跳出循环
while (1) {
printf("请输入一个1 - 100之间的整数:");
scanf("%d", &num);
printf("\n");
if (num > x) {
printf("高了!");
printf("\n");
}
if (num < x) {
printf("低了!");
printf("\n");
}
if (num == x) {
printf("猜对了!");
printf("\n");
break;
}
}
}
//下面是主函数,主要用来生成随机数,调用其他的函数,使得游戏能顺利进行
int main() {
srand(time(0));
//为了解决每次运行程序生成的随机数都一样的现象,我们引入srand函数
//该函数是给rand 函数生成"种子" ,我们要用一直在变的数字,自然会想到时间,
//time()函数是计算时间戳的函数,包含在头文件<time.h>中,这样我们就可以解决每次运行程序前几次的随机数都一样的问题
int num = rand() % 100 + 1;
// rand( void ) 函数为生成随机数的函数 ,
//该函数作用原理是以一个种子为头,根据一系列的公式计算出一个数值.
//这里我们 模 100 + 1 得到的就是 1 - 100 之间的随机数
int a = interface();
if (a == 1) {
game(num);
}
else
{
printf("退出游戏!\n");
}
system("pause");
return 0;