建立一个int型二维数组,第一维元素个数为5,第二维元素个数随机在1~5 之间。 (1)依次将整数25、24、23、22、...放入数组,最后打印整个二维数组的内容(共输出5行)
时间: 2024-05-10 11:21:10 浏览: 66
好的,这个问题是关于编程的,我可以回答。
以下是代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int arr[5][5]; // 定义一个 5 行 5 列的二维数组 arr
int i, j, count = 25; // 定义循环计数器 i, j 和计数器 count,初值为 25
srand((unsigned)time(NULL)); // 用当前时间初始化随机数种子
for (i = 0; i < 5; i++) {
int col = rand() % 5 + 1; // 生成 1~5 之间的随机数作为第二维元素个数
for (j = 0; j < col; j++) {
arr[i][j] = count--; // 将整数递减的赋值给 arr[i][j]
}
while (j < 5) { // 剩余元素全部设为 0
arr[i][j++] = 0;
}
}
for (i = 0; i < 5; i++) {
for (j = 0; j < 5; j++) {
printf("%-3d", arr[i][j]); // 打印 arr[i][j],占位符用%-3d,左对齐且占3个字符宽度
}
printf("\n"); // 换行
}
return 0;
}
```
输出结果:
```
25 24 23 0 0
22 21 20 0 0
19 18 17 0 0
16 15 14 13 12
11 10 9 8 7
```
阅读全文