猜数字游戏
首先我们要先生成一个随机数,用rand() 函数生成随机数,但是这个随机数还不是真正意义上的随机数,rand() 函数产生的随机数其实是伪随机数,是根据一个数值按照某个公式推算出来的,这个数值被称为“种子”。种子和随机数之间的关系是一种正态分布。
可以通过 srand() 函数来重新“播种”,它需要一个 unsigned int 类型的参数。在实际开发中,可以用时间作为参数,只要每次播种的时间不同,那么生成的种子就不同,最终的随机数也就不同。这样就可以得到一个真正的随机数。
rand函数使用语法:
v1 = rand() % 100; // v1 in the range 0 to 99
v2 = rand() % 100 + 1; // v2 in the range 1 to 100
v3 = rand() % 30 + 1985; // v3 in the range 1985-2014
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main() {
printf("------------------------\n");
printf("请输入一个数开始猜(1-100)\n");
printf("------------------------\n");
srand((unsigned int)time(0));
int r = rand() % 100 + 1; //设置随机数范围为1-100
while (1) {
int guess = 0;
scanf("%d", &guess);
if (guess < r) {
printf("低了!\n");
}else if (guess > r) {
printf("高了!\n");
}
else {
printf("答对了!");
break;
}
}
return 0;
}