C语言 如何随机生成数组?
使用rand()函数+循环语句可生成一组随机数组。
1、C语言提供了一些库函数来实现随机数的产生。C语言中有三个通用的随机数发生器,分别为 rand函数, random函数, randomize 函数。rand函数产生的并不是真意正义上的随机数,是一个伪随机数,是根据一个数,称之为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数。但这不是真正的随机数,C提供了srand()函数,它的原形是void srand( int a),用来设置一个种子数。在调用rand函数产生随机数前,应该先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。
2、例程:
#include<time.h>
#include<stdlib.h>
#include<stdio.h>
void main(){
srand((unsigned)time(NULL)); //用当前系统时间设置种子
int a[100];
printf("随即初始化数组的100个数(范围是0~100).\n");
for(int i=0;i<100;i++){
a[i]=rand()%101; //用rand函数生成0-100的随机数,并赋值给数组a[i]
printf("%4d",a[i]);
if(i%10==0 && i!=0)
printf("\n");
}
getchar();
}