- Rand
- 作用:是c语言中用来生成随机数的函数
- 原型:int rand(void)
- 结果:引用这个这个函数会生成0--max之间的随机数
Max的值根据编译器的不同而发生变化
4.头文件:stdlib.h
试着运用一下这个函数
得到结果发现两次打印的值都是一样的的
原因:rand是生成的数有伪随机性,而随机数的变化所依靠的是种子,一般情况下,rand函数的种子默认是1
- Srand函数
- 原型:void srand(unsigned int seed)
- 运用:rand函数使用之前需要先使用srand函数来改变其种子(seed)的随机值,这样子rand函数生成的值就是随机的
- 矛盾出现:生成rand的随机数之前还需要生成随机数seed来满足条件
- time函数
- 作用:一般使用程序运行的时间作为种子,因为时间时刻都是在发生变化的
- 原型:time_t time(time_t*timer)
- 原理:time函数会返回当前日历的时间。其实返回的是1970.1.1到今日的茶汁,其中的单位是秒。
- 返回值的分类:
- time函数的参数 timer 如果是⾮NULL的指针的话,函数也会将这个返回的差值放在timer指向的内存中带回去。
- 如果 timer 是NULL,就只返回这个时间的差值。
5.头文件:time.h
6.返回null可以表示:time(NULL)
生成随机数的预运行代码:
- 设置随机数范围
【1】生成0-99之间的随机数:Rand()%100;(余数范围是0-99)
【2】生成1-100之间的随机数:rand()%100+1
【3】1生成0-200之间的随机数:100+rand()%(200-100+1)
得出结论:生成a-b的随机数
a + rand()%(b-a+1)
猜数字游戏的生成
如果规定猜数字的次数限制
只需要对于第一部分进行修改:在开头设定一个计数的值为count,在结尾补上count依次减少为0的情况