rand()和srand()用法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/yinuoheqian123/article/details/82788196

rand()产生伪随机数,需要srand()来设置一个种子,通常用系统时间

示例:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
srand(time(NULL));//使用系统时间产生随机数
for (int i = 0; i < 10; i++)
{
printf("%d\t", rand());
}

}

每次运行时会发现会产生10个不同的随机数。

如果想要限制产生的随机数的范围,可以使用如下代码:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
srand(time(NULL));
for (int i = 0; i < 10; i++)
{
printf("%d\t", rand()%20+100);//范围为100到120,20表示长度,100表示起始位置
}

}

要产生0到1范围的随机数,可使用如下代码:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
srand(time(NULL));
for (int i = 0; i < 10; i++)
{
printf("%2f\t", (rand()%100)/100.0);//注意100.0的”.0”不能漏掉
}

}

参考:https://blog.csdn.net/weixin_40790467/article/details/79715270

猜你喜欢

转载自blog.csdn.net/yinuoheqian123/article/details/82788196