C语言随机函数总结2008-04-28 22:25(1) rand()函数:

原型: int rand(void)

功能: 产生从0到RAND_MAX(0x7fff)之间的随机数。

头文件: stdlib.h

例:

#include

#include

int main()

{

int k;

k = rand();

printf("%d\n", k);

return 0;

}

编译运行,发现他的确产生随机数了,但是,每次运行程序产生的随机数都是一样的,为什么呢?因为随机数取在C语言中采用的是固定序列,所以每次执行所取的是同一个数。那么如何写一个程序,让它每次运行时产生的随机数都不一样呢?往下看:

(2)srand()函数:

原型: void srand(unsigned seed)

功能: 产生随机数的起始发生数据,和rand函数配合使用

头文件: stdlib.h   time.h

例:

#include

#include

#include

int main(void)

{

int i;

time_t t;

srand((unsigned) time(&t));

printf("Ten random numbers from 0 to 99\n\n");

for (i=0; i<10; i++)

printf("%d\n", rand()%100);

return 0;

}

这时运行程序,会发现每次产生的随机数都不一样。这是因为这里采用了时间作为种子,而时间在每时每刻都不相同,所以就产生了"随机"的随机数了。所以,要想产生不同的随机数,在使用rand之前需要先调用srand。这样做相当麻烦,有没一个更简单的函数呢?往下看:

(3)randomize()函数:

原型: int randomize(void)

功能: 通过time函数来得到一个随机数

头文件: stdlib.h   time.h

该函数就相当于srand((unsign)(time(NULL)) 不过应注意的是randomize()的功能要通过time来实现所以在调用它时头文件要包含time.h。

(4)产生一个X到Y的随机数:

由于rand产生的随机数从0到rand_max,而rand_max是一个很大的数,那么如何产生从X~Y的数呢?

只要这样写:

k=rand()%(Y-X+1)+X;

这样,就可以产生你想要的任何范围内的随机数了。

c语言srand函数作用,C语言中srand随机函数怎么用?相关推荐

  1. c语言中srand的作用,C语言中srand(), rand(), time()函数  转载

    srand函数 srand函数是随机数发生器的初始化函数. 原型:void srand(unsigned seed); 用法:它需要提供一个种子,这个种子会对应一个随机数,如果使用相同的种子,后面的r ...

  2. c语言fgetc函数作用,C语言中fgetc函数的使用方法

    该函数包含在C语言中的stdio.h头文件中,主要功能是从流中读取一个字符,并增加文件指针的位置. 函数原型:int fgetc(FILE *fp); 函数功能:从流中读取字符,即从fp所指定的文件中 ...

  3. c语言while函数作用,C语言中while /do while语句用法

    在c语言中do while与while与我们学的vb,asp.net都一样的,下面我来介绍一下关于C语言中while /do while语句基于用法. C语言while语句的用法 while语句的一般 ...

  4. c语言rewind函数作用,C语言中的setlinebuf()、utmpname()、rewind函数使用

    C语言setlinebuf()函数:设置文件流为线性缓冲区头文件: #include 定义函数: void setlinebuf(FILE * stream); 函数说明:setlinebuf()用来 ...

  5. c语言s_gets函数作用,C语言中gets_s(),gets(),fgets()函数的比较。

    先来讲讲大家最熟悉的gets()函数. 1.gets()函数不安全. 2.C11标准委员会已经将其废除,建议能不用尽量不用. 解释: gets()函数的作用:它读取整行输入,直至遇到换行符,然后丢弃换 ...

  6. exit在c语言里的作用,C语言中exit函数的使用

    exit() 结束当前进程/当前程序/,在整个程序中,只要调用 exit ,就结束 return() 是当前函数返回,当然如果是在主函数main, 自然也就结束当前进程了,如果不是,那就是退回上一层调 ...

  7. c语言atan的作用,C语言中的atan和atan2

    在C语言的math.h或C++中的cmath中有两个求反正切的函数atan(double x)与atan2(double y,double x)  他们返回的值是弧度 要转化为角度再自己处理下. 前者 ...

  8. c语言中exit函数作用,c语言中exit函数 c语言中exit与break区别

    C语言中exit();怎么用? exit() 结束当前进程/当前程序/,在整个程序中,只要调用 exit ,就结束. return() 是当前函数返回,当然如果是在主函数main, 自然也就结束当前进 ...

  9. sort在c语言中的作用,c语言中sort的用法详解.docx

    c语言中sort的用法详解.docx C语言中SORT的用法详解C语言的学习很多是比较复杂的,那么C语言中SORT的用法的用法你知道吗下面学习啦小编就跟你们详细介绍下C语言中SORT的用法的用法,希望 ...

  10. c语言ftell的作用,C语言中ftell函数的使用方法

    在C语言中,ftell函数用来返回回当前文件指针的位置.其定义在stdio.h头文件中.具体介绍如下: 函数原型:long ftell(FILE *fp); 是否是标准函数:是 函数功能:返回当前文件 ...

最新文章

  1. java下输出中文的一点研究
  2. 经典面试题: 为啥 ConcurrentHashMap 读操作不需要加锁?
  3. 几行代码就搞定高端大气的云系统架构图
  4. 关于鸿蒙 2.0,那些开发者不知道的一切
  5. PHP面试题:请说明 PHP 中传值与传引用的区别。什么时候传值什么时候传引用?
  6. 使用jQuery清空file文件域的解决方案
  7. mysql动静分离_haproxy的web服务负载均衡、动静分离、 MySQL服务负载均衡、状态监控...
  8. 小谈Online-game服务器端设计(3)
  9. C++ 最大堆最小堆与push_heap pop_heap
  10. php中对数组进行转码,php实现转码的方式(支持数组类型转码)
  11. Vulnerable Javascript library
  12. 基于MapGuide的在线WebGIS站点介绍
  13. 镁客网每周硬科技领域投融资汇总(10.21-10.27),AI芯片创企Syntiant获英特尔等头部企业投资...
  14. 保护眼睛颜色的RGB数值
  15. 【VMCloud云平台】SCAP(三)初始配置
  16. 机器学习的几个重要问题
  17. carplay是否可以用安卓系统_苹果CarPlay系统是什么?安卓系统手机能用吗?
  18. vim 从嫌弃到依赖(14)——快速跳转
  19. 带有三角函数的计算机,三角函数计算器
  20. 位运算实现加减乘除四则运算

热门文章

  1. linux系统出现BUG:softlockup- CPU#0 STUCK FOR 23s 或 rcu_sched self-detected stall on cpu 等字样的解决办法
  2. [音乐] 逆转裁判第二季 OP『Nеvеr Losе』
  3. 2017年的Microsoft Imagine Cup提供的免费Azure申请及使用方法
  4. 003_创建simulink文件
  5. python爬虫01-get请求,post请求,参数拼接,re正则解析,bs解析,xpath解析xml及html文件,requests进阶模拟登录,反盗链zhuanqu,代理
  6. 关于locale的设定
  7. 算法竞赛入门经典-第五章错位输出
  8. 十二烷基-β-D-麦芽糖苷/CAS号: 69227-93-6
  9. cannot read property 'options' of underfined
  10. html怎么设置一个banner图像,css如何设置banner图自适应