C++中rand()函数和随机数种子

C++中rand()函数的用法

rand() % (b-a+1)+ a ; 就表示 a~b 之间的一个随机整数。

表达式 int num = rand() % 100 + 1; 产生的是1到100之间的随机数,而不是1到99。

rand() % 100 会产生一个从0到99的随机数,因为 % 是取模运算符,它会给出 rand() 除以100的余数。

当在这个结果上加1时(... + 1),就将可能的数值范围从0-99转换到了1-100。

因此,num 可以是1到100中的任何整数,包括1和100。

cpp 复制代码
 srand((unsigned int)time(NULL)); // 使用当前时间作为种子来初始化随机数生成器
相关推荐
小肝一下8 小时前
2. 顺序表和链表
c语言·数据结构·c++·链表·dijkstra·依蕾娜·香香的依蕾娜
王老师青少年编程9 小时前
csp信奥赛C++高频考点专项训练:【二分答案】案例5:进击的奶牛
c++·二分答案·csp·高频考点·信奥赛·进击的奶牛
旖-旎20 小时前
《LeetCode647 回文子串 || LeetCode 5 最长回文子串》
c++·算法·leetcode·动态规划·哈希算法
Darkwanderor21 小时前
对Linux的进程控制的研究
linux·运维·c++
云泽8081 天前
从零吃透 C++ 异常:抛出捕获、栈展开、异常重抛与编码规范详解
开发语言·c++·代码规范
REDcker1 天前
libdatachannel 快速入门
c++·webrtc·datachannel
second601 天前
第一部分:快速上手 —— 建立 C++ 基本语法与编程范式
开发语言·c++
郝学胜-神的一滴1 天前
算法实战:最小k个数——大顶堆的优雅解法
开发语言·数据结构·c++·python·程序人生·算法·排序算法
bksczm1 天前
linux之线程概念和控制
linux·开发语言·c++
hehelm1 天前
Linux网络编程—TCP字典翻译系统
linux·开发语言·网络·c++·tcp/ip