【C语言】猜数字游戏

系统随机给出一个0-100之间的数,我们猜,类似于网络上的数字炸弹游戏。

思路:

系统通过 “ rand()” 函数随机数种子随机生成一个0-100之间的数,我们在屏幕上输入一个数,若比生成的数大,提示 “高了” ,若比生成的数小,提示 “低了”,相同则提示 “猜对了” 。

代码详解:

1.创建随机数种子

这一步很关键,如果没有这一步,rand函数随机出的数只有一个,即每一次运行程序时的随机数都是一样的,并且这一步必须在rand函数之前写出,否则没有效果。参数time(0)即是以时间为种子生成随机数,每一刻时间都不同,所以每次生成的随机数都不同。

srand((unsigned int)time(0));//创建随机数种子

 2.使用rand函数

使用rand函数生成随机数并赋给num,rand()%100+1就可以将随机数的范围控制在0-100之间。

int num = rand() % 100 + 1;//将随机数字范围控制在0-100之间

3.判断是否猜到

使用while循环中嵌套if语句来判断。首先让用户输入猜的数,再使用if语句判断猜的数和随机出来的数的大小或相等关系,并提示 “高了” “低了” 或 “猜对了”。在这里if语句的作用主要是判断,while循环的作用主要是在猜错时可以继续猜,直到猜到为止。

while (1) {
		printf("输入一个数:");
		scanf("%d", &input);
		if (input < num) {
			printf("低了\n");
		}
		else if (input > num) {
			printf("高了\n");
		}
		else if (input == num) {
			printf("猜对了\n");
			break;
		}
	}

完整代码参考

srand函数的头文件:#include

time()的头文件:#include

#include
#include
#include
void main() {
	srand((unsigned int)time(0));//创建随机数种子
	int num = rand() % 100 + 1;//将随机数字范围控制在0-100之间
	int input = 0;
	while (1) {
		printf("输入一个数:");
		scanf("%d", &input);
		if (input < num) {
			printf("低了\n");
		}
		else if (input > num) {
			printf("高了\n");
		}
		else if (input == num) {
			printf("猜对了\n");
			break;
		}
	}
}

 

 

你可能感兴趣的:(C语言,c语言,开发语言,后端)