随机生成20以内的整数,存入一个4行5列的二维数组中并输出,计算所有元素的和并输出。用c语言
时间: 2025-01-04 15:37:58 浏览: 15
在C语言中,你可以使用`srand()`函数初始化随机数种子,然后通过`rand()`函数生成指定范围内的随机数。下面是一个简单的示例程序,它将生成20以内的整数,填充到一个4行5列的二维数组,并计算所有元素的和:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h> // 引入时间库用于初始化随机数
#define ROWS 4
#define COLS 5
void generate_random(int arr[ROWS][COLS], int limit) {
srand(time(0)); // 初始化随机数种子
for (int i = 0; i < ROWS * COLS; i++) {
arr[i / COLS][i % COLS] = rand() % limit + 1; // 避免0,加上1
}
}
int sum_elements(int arr[ROWS][COLS]) {
int total_sum = 0;
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
total_sum += arr[i][j];
}
}
return total_sum;
}
int main() {
int array[ROWS][COLS];
generate_random(array, 20);
printf("Array:\n");
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("%d ", array[i][j]);
}
printf("\n");
}
printf("Sum of all elements: %d\n", sum_elements(array));
return 0;
}
```
运行这个程序,它会输出一个20以内的随机数矩阵以及所有元素的总和。
阅读全文