在上一节,我们讲解了如何用srand和rand生成随机数之后,我们有时候需要使用某一范围内的随机数,比如1~100之间的

比如生成表示星期的数字0~6,每年12个月份1~12,那么该如何表示呢?


我们可以使用%运算符巧妙的解决,比如想获得0~6之间的数字,那么可以写成:

rand()%7

这个很容易理解,对7取余,它的余数一定是0~6之间的数字,其余类似


如果想获得1~12之间的数字呢?,可以写成:

rand()12+1

可以看到,首先对12取余,得到的随机数范围是0~11之间的,再加1就变成了1~12之间的数字,顺理成章

其余范围同理,大家理解即可轻松实现

点赞(0)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)