`
hzy3774
  • 浏览: 999028 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

C语言产生随机数

 
阅读更多

 

#include <stdio.h>
#include <time.h>

void main(){
	int i;
	for (i = 0; i < 10; i++)
	{
		printf("%d\n", rand());
	}
}

 这样的随机数虽然数之间不同,但是每次产生的序列都相同

如果采用时间做种,就可以产生每次不同的随机数

#include <stdio.h>
#include <time.h>

void main(){
	int i;
	srand((int)time(NULL));
	for (i = 0; i < 10; i++)
	{
		printf("%d\n", rand());
	}
}
 

 这样每次执行产生的随机数不同,但同时产生的随机数相同

如果要缩小随机数范围:

#include <stdio.h>
#include <time.h>

void main(){
	int i;
	srand((int)time(NULL));
	for (i = 0; i < 10; i++)
	{
		printf("%d\n", rand() % 10 + 1);//1 - 10
	}
}
   

若要减少重复,可以先在种子里加个随机数:

 

#include <stdio.h>
#include <time.h>

void main(){
	int i;
	srand((int)time(0)^rand());
	for (i = 0; i < 10; i++)
	{
		printf("%d\n", rand());
	}
}
   

以秒做种子,一秒才会变一次,如果以毫秒会好一点

 

#include <stdio.h>
#include <time.h>
#include <sys/timeb.h>

void main(){
	int i;
	struct _timeb timeBuf;
	_ftime(&timeBuf);
	srand(timeBuf.millitm);//以毫秒做种
	for (i = 0; i < 10; i++)
	{
		printf("%d\n", rand());
	}
}
 

分享到:
评论

相关推荐

    C语言产生随机数详解

    C语言产生随机数详解 本文档详细叙述了srand和rand函数的使用方法和注意事项。在C语言中,rand函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,以某个...

    c语言产生随机数.pdf

    ### C语言产生随机数的方法与实践 #### 一、引言 在计算机编程中,随机数的生成是一项非常重要的技术,广泛应用于各种场景,如密码学、模拟仿真、游戏开发等。C语言作为一门基础且强大的编程语言,提供了多种方法来...

    用c语言产生随机数.doc

    ### 用C语言产生随机数 #### 概述 在C语言编程中,生成随机数是一项常见的需求,尤其是在游戏开发、模拟仿真等场景下尤为重要。本文将详细介绍如何使用C语言中的`rand()`函数以及配套的`srand()`函数来生成伪随机...

    深入理解随机数的产生——用c语言产生随机数rand().doc

    "深入理解随机数的产生——用C语言产生随机数rand()" 随机数是一种非常重要的概念,在计算机科学中有着广泛的应用。C语言中提供了rand()函数来产生伪随机数,但这并不是真正的随机数,而是一个根据种子值递推公式...

    C语言产生随机数C语言产生随机数.doc

    C 语言产生随机数 C 语言中的随机数生成是通过 rand() 函数和 srand() 函数实现的。rand() 函数可以生成一个伪随机数,但这不是真正的随机数,而是一个根据种子值计算出来的一系数。srand() 函数用于设置随机数的...

    用c语言产生随机数

    在C语言中,生成随机数是编程中常见的需求,尽管计算机生成的随机数实际上是伪随机数,因为它们是通过算法产生的,而非真正的不可预测的随机过程。在C语言中,我们可以利用标准库提供的rand()函数来生成伪随机数,而...

Global site tag (gtag.js) - Google Analytics