ps:最近写代码被量子力学编译器恶心到了 自家的编译器不同版本对.和->的要求还不一样 本地编译器结果3平台编译结果1 什么鬼设定(没错gcc我说的就是你个憨批)这还写个p的代码了?我直接整个随机数宁自己量子力学去吧
随机数的生成
首先,要说明的是通常情况下我们看到的函数生成的随机数不是真的随机数而是通过一定的“魔术算法”生成的伪随机数 那么为啥嘞?
rand与srand
函数功能:
int rand();//返回值为随机数,参数为空
int srand(unsigned int seed);//对伪随机序列进行初始化
通俗的讲 在生成伪随机数之前要对伪随机序列进行初始化,即设置随机数种 如果不调用srand()的话 默认为srand(1) 而srand的参数又决定了随机数序列的顺序 也就是说如果srand的值保持不变那么 生成的随机序列的顺序也一直不变 所以伪随机数就“伪”在这里了 而一般来说我们又不会设置一个变化的变量传入到srand()中 所以要想真的随机 就要传入一个自变量 最常用的是时间
//#include <time.h>
time(NULL);//返回从1970.1.1日0点到现在经过的秒数
从time(NULL)的功能可知 其值每秒都会递增1 因此正适合作为随机数种
具体实现
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
int num;
srand(time(0));
for(int i=0;i<10;i++

本文介绍了C语言中如何生成随机数,探讨了rand()与srand()函数的使用,强调了srand()初始化的重要性,并通过示例展示了如何确定随机数的生成范围。最后,基于这些知识实现了随机验证码的生成,给出了一些实际运行的例子。
最低0.47元/天 解锁文章
2474

被折叠的 条评论
为什么被折叠?



