c语言编程 题目描述 将一个二维数组中的数据,按 行 的顺序依次放到一维数组中。假定二维数组的行数不超过 10 行,列数不超过 10 列 输出最大值。 输入样例: 3 4 12 2 3 4 5 6 7 8 9 10 11 1 输出样例: 12
时间: 2023-12-31 10:05:50 浏览: 73
下面是一个用 C 语言实现将二维数组按行顺序存储到一维数组中,并输出最大值的代码:
```c
#include <stdio.h>
int main()
{
int n, m;
scanf("%d%d", &n, &m);
int a[11][11];
int b[101];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
scanf("%d", &a[i][j]); // 输入二维数组中的数据
}
}
int k = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
b[k++] = a[i][j]; // 按行顺序将二维数组中的数据存储到一维数组中
}
}
int max = b[0];
for (int i = 1; i < n*m; i++) {
if (b[i] > max) {
max = b[i]; // 寻找最大值
}
}
printf("%d\n", max); // 输出最大值
return 0;
}
```
代码中,与前两个题目相同,首先输入二维数组的行数 n 和列数 m,然后定义一个二维数组 a 和一个一维数组 b。接着,按照行优先的顺序,依次输入二维数组中的数据,并将其存储到二维数组 a 中。接着,按照行优先的顺序,将二维数组 a 中的数据依次存储到一维数组 b 中。然后,从一维数组 b 中寻找最大值,并输出最大值。
阅读全文