栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C 产生随机数

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C 产生随机数

文章目录
  • 1. rand() 伪随机数生成器
  • 2. time() 返回系统时间
  • 3. srand()
  • 4. 总结

1. rand() 伪随机数生成器

ANSI C提供了rand()生成随机数

#include 

int rand(void);

功能:
	返回一个伪随机数,区间在 0 到 RAND_MAX 之间
参数:
	无
返回值:
	0 到 RAND_MAX 随机数
2. time() 返回系统时间
#include 

time_t time(time_t *tloc);

功能:
	以秒为单位,返回一个表示时间的整数,起始时间是  1970-01-01 00:00:00 +0000 (UTC)
	参数不为NULL,则表示时间的整数也会放在tloc指向的地址中。
参数:
	tloc 用来存储时间信息的变量的地址
	(在调用之前,定义time_t变量,取地址传进来)
返回值:
	成功 返回表示时间的整数,从1970-01-01 00:00:00 +0000 (UTC)开始计
	失败 返回 -1 
		 错误码  EFAULT 
		 tloc points outside your accessible address space (but see BUGS).
		 tloc指针不可访问
3. srand()
#include 

void srand(unsigned int seed);

功能:
	将它的参数设置为rand()返回的伪随机整数序列的种子。若使用相同的种子值调用srand(),rand()的返回就是一样的。

参数:
	seed  种子,任何整数都可以

返回值
	无
4. 总结
#include 
#include 
#include 
#include 

int main(){
	int rand_num = 0;
	while(1){
		//time_t 为 long 类型,这里需要强转一下类型
		//time(0)  调用time函数,传值NULL(0)
		//将time(0)的返回值作为参数传给srand()
		srand((unsigned int )time(0));
		//获取随机值
		rand_num = rand();
		printf("随机数 %d n", rand_num);
		sleep(1);
	}
	return 0;
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/312272.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号