C语言中如何生成1~100的随机数(附代码)


本文摘自PHP中文网,作者烟雨青岚,侵删。

在C语言中是如何生成1~100的随机数的呢?想必大家都想了解一下吧,那么话不多说,跟着小编一起了解一下吧。

C语言如何生成随机数

生成10个1~100的随机数

废话不多说直接上程序。

1

2

3

4

5

6

7

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

{int ret = 0;

srand((unsigned int)time(NULL));for(int i=0; i<10; i++)

{

ret = rand()%100;printf("%d ",ret);

}return 0;

}

9d953855b8154ea3aa80ed2831af377.png

这个程序是用来生成10个随机的数。接下来会详细说一说这个程序的构成。

随机数生成代码的分析

以上程序的关键代码是:

1

2

srand = ((unsigned)time(NULL));

ret = rand()%100;

rand()函数所需头文件是

1

#include<stdlib.h>

rand()是生成伪随机数的函数,它会按照一定的序列来生成随机数,但是它序列是固定的:

3337fe67fbe2c691406644faad28024.png

程序每次执行它都将按照这个序列来给出随机数,所以在对rand()不加限制条件的话,生成的随机数不够随机。

time()函数所需要头的头文件是:

1

#include<time.h>

time()函数,值得注意的是time函数的形参,这个形参是个指针变量,通常写为time(NULL)。
这个函数的功能是,返回自1970年1月1日00:00:00到你先在电脑运行的时间(例:2018年3月24日14:14:00)之间的时间。这个数是随机的,随着你电脑运行时间而发生改变。

srand()函数所需要的头文件是:

1

#include<stdlib.h>

srand()函数是伪随机数发生器种子,它给rand()函数一个产生一个起点。在单独使用rand()函数的时候,它将1作为默认参数。srand()的形参是一个无符号的类型,即unsigned类型,可以是int,float,char等等。
但在这里为了达到随机数效果,将使用time()函数来产生一个起点,它直接作用于rand()函数。

注意:

阅读剩余部分

相关阅读 >>

C语言中的标识符只能由三种字符组成,它们是什么?

C语言允许函数的递归调用吗

可运行的C语言程序的扩展名为什么?

C语言goto语句用法

putchar和printf的区别是什么

C语言定义函数

C语言strcmp函数用法详解

C语言属于什么语言

适合小白入门C语言的简单教程

初学C语言用什么软件

更多相关阅读请进入《C语言》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...