C语言--猜数字游戏

本文介绍了C语言中的rand()函数用于生成伪随机数,但需要通过srand()设置种子以确保随机性。time()函数常用于提供初始随机种子,生成指定范围内的随机数,如0-99、1-100等。文章还讨论了如何在猜数字游戏中应用这些函数并考虑次数限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • Rand
  1. 作用:是c语言中用来生成随机数的函数
  2. 原型:int rand(void)
  3. 结果:引用这个这个函数会生成0--max之间的随机数

Max的值根据编译器的不同而发生变化 

     4.头文件:stdlib.h

试着运用一下这个函数

 

得到结果发现两次打印的值都是一样的的

原因:rand是生成的数有伪随机性,而随机数的变化所依靠的是种子,一般情况下,rand函数的种子默认是1

  • Srand函数
  1. 原型:void srand(unsigned int seed)
  2. 运用:rand函数使用之前需要先使用srand函数来改变其种子(seed)的随机值,这样子rand函数生成的值就是随机的
  3. 矛盾出现:生成rand的随机数之前还需要生成随机数seed来满足条件
  • time函数
  1. 作用:一般使用程序运行的时间作为种子,因为时间时刻都是在发生变化的
  2. 原型:time_t time(time_t*timer)
  3. 原理:time函数会返回当前日历的时间。其实返回的是1970.1.1到今日的茶汁,其中的单位是秒。
  4. 返回值的分类:
  1. time函数的参数 timer 如果是⾮NULL的指针的话,函数也会将这个返回的差值放在timer指向的内存中带回去。
  2. 如果 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的情况

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值