C语言如何产生随机数

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
main(){

	int a;
	srand(time(NULL)); 
	for(int i=0;i<5;i++){
			a=rand()%100;//得到一个0到99之间的随机数,想得到某个范围的数就%该范围最大的数 
		printf("%d\t",a);
	}
} 

1.上面产生了5个[0,100)的正整数。

2.srand()函数,和rand()函数需要的头文件是第三个
(1)srand(),该函数的功能是,为rand()函数提供一个起点值。如果提供的起点值相同,则每次产生的一个或几个随机数都相同。
(2)rand()函数,该函数的作用是,产生随机数。在没有srand()函数提供起点值的时候,该函数的默认起点值为1。

3.time()函数的所需要的头文件是第二个。
(1)该函数的功能是返回一个自1970年1月1日00:00:00到你现在运行该程序的时间的之间的一个随机数。

4.如果我想得到0到多少多少之间的数。
我可以这样写, int x = rand()%100;

5.如果我想得到范围[a,b)的数,公式:int x=(rond()%(b-a))+b;
例如:我想得到[57,99]之间的数
我可以这样写,int x=(rand()%(99-57))+99+1;(如果不要得到99这个数,则不要加1)。

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值