网站首页 > 技术文章 正文
任务
定义函数,输出随机数。随机个数可指定。随机数的范围可定制。
准备
C语言标准库提供了三个库函数。srand、rand和time。联合使用就可完成任务。资料显示,我们需要引用三个头文件。stdio.h、stdlib.h和time.h。
思路
首先,定义一个基本函数,产生随机数。这完全可以由rand函数来满足。rand的函数原型如下:
int rand();
然后,查询资料可知,使用rand函数必须事先设置好随机种子。因此,我们不得不借助srand函数来种下随机种子,给后续的rand函数使用。
void srand(unsigned int);
聪明的你可能想到一个问题。srand的返回类型为void,那么据此推测srand种下的“随机种子”是一个全局变量,对吗?完全正确!请记得这点。
为了实现“随机数”效果,我们喂给srand的实参要尽可能的“随机”!一个简单实用的方法是捕捉当前时间,作为一个值传入srand。毕竟,“逝者如斯夫”,时间在我们所知的空间一直在变。
算法
理顺思路后,算法出来了。
- 捕捉当前时间,传入srand函数
- 产生随机种子
- 调用rand函数输出一个“随机”整数
代码
下面给出C语言的实现代码。
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
int main()
{
srand(time(NULL));
int random_number = rand();
printf("%d\n", randam_number);
return 0;
}
猜你喜欢
- 2024-09-27 分享一段神奇的小代码:那天是周几啊
- 2024-09-27 C语言备忘录 - 18. 文件基础(c语言备份文件)
- 2024-09-27 线性表顺序存储结构求集合的并,交,补,差(源代码附上 超详细)
- 2024-09-27 如何轻松使用 C 语言实现一个栈?(c语言如何建立一个栈)
- 2024-09-27 C语言学习:写一个文件的实例,详解(收藏)
- 2024-09-27 C语言学习过程代码记录(c语言代码例子)
- 2024-09-27 C++头文件和std命名空间(精辟)(c++头文件类型)
- 2024-09-27 【C高手秘籍】在处理复杂数据结构时,如何提高代码的运行效率?
- 2024-09-27 【C语言】(25)文件包含(c语言中,文件由什么组成)
- 2024-09-27 简单的加密文本手段,c语言新手也会
- 1516℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 582℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 518℃MySQL service启动脚本浅析(r12笔记第59天)
- 488℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 487℃启用MySQL查询缓存(mysql8.0查询缓存)
- 473℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 453℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 452℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- c语言min函数头文件 (68)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)