c语言生成1000000个0到1000000随机数并存入数组
时间: 2024-10-09 15:09:06 浏览: 31
C语言程序设计-把20个随机数存入一个数组,然后输出该数组中的最小值;其中确定最小值的下标的操作在fun函数中实现
5星 · 资源好评率100%
在C语言中生成1000000个0到1000000之间的随机数并存入数组,可以使用标准库函数`rand()`和`srand()`. 这里是一个基本的示例,我们将使用`time(NULL)`设置随机数种子以确保每次运行程序得到不同的序列:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX_NUM 1000000
#define ARRAY_SIZE 1000000
int main() {
int random_array[ARRAY_SIZE];
srand(time(0)); // 设置随机数种子
for (size_t i = 0; i < ARRAY_SIZE; ++i) {
random_array[i] = rand() % (MAX_NUM + 1); // 随机数范围 [0, MAX_NUM]
}
// 写入文件或处理数组(这里仅示例)
FILE* file = fopen("random_numbers.txt", "w");
if (file != NULL) {
for (size_t i = 0; i < ARRAY_SIZE; ++i) {
fprintf(file, "%d\n", random_array[i]);
}
fclose(file);
printf("Random numbers written to random_numbers.txt.\n");
} else {
printf("Failed to open file for writing.\n");
}
return 0;
}
```
注意:由于生成的是整数,`rand() % (MAX_NUM + 1)`会产生一个闭区间[0, MAX_NUM]的随机数。如果需要包含边界条件(即0和1000000),你可以稍微调整一下表达式。
阅读全文