一个二维数组{1,2,3},{4,5,6},{7,8,9},求整个数组的平均值、最大值及其下标、最小值及其下标,用C语言
时间: 2023-06-05 12:04:13 浏览: 54
来实现。
以下是代码:
#include <stdio.h>
int main() {
int arr[3][3] = {{1,2,3}, {4,5,6}, {7,8,9}};
int sum = 0;
int max = arr[0][0];
int min = arr[0][0];
int max_i = 0, max_j = 0;
int min_i = 0, min_j = 0;
for(int i = 0; i < 3; i++) {
for(int j = 0; j < 3; j++) {
sum += arr[i][j];
if(arr[i][j] > max) {
max = arr[i][j];
max_i = i;
max_j = j;
}
if(arr[i][j] < min) {
min = arr[i][j];
min_i = i;
min_j = j;
}
}
}
printf("平均值为: %f\n", (float)sum/9);
printf("最大值为: %d,它的下标为: [%d][%d]\n", max, max_i, max_j);
printf("最小值为: %d,它的下标为: [%d][%d]\n", min, min_i, min_j);
return 0;
}
输出结果:
平均值为: 5.000000
最大值为: 9,它的下标为: [2][2]
最小值为: 1,它的下标为: [0][0]
相关问题
将一个二维数组行和列元素互换,存到另一个二维数组中并输出这两个矩阵。 原始矩阵如下: 1 4 5 6 3 2 7 8 7 9 0 3
将二维数组中的行和列元素互换并存到另一个二维数组中的做法如下:
1. 创建一个新的二维数组,长度为原数组的列数,宽度为原数组的行数
2. 遍历原数组中的每一个元素,并将其存储到新数组中对应的位置(即行和列互换)
3. 输出原数组和新数组
如下代码为参考:
```python
# 原始二维数组
arr = [[1, 4, 5, 6], [3, 2, 7, 8], [7, 9, 0, 3]]
# 创建一个新的二维数组
new_arr = [[0 for i in range(len(arr))] for j in range(len(arr[0]))]
# 遍历原数组中的每一个元素
for i in range(len(arr)):
for j in range(len(arr[i])):
new_arr[j][i] = arr[i][j]
# 输出原数组和新数组
print("原数组: ", arr)
print("新数组: ", new_arr)
```
输出结果为:
```
原数组: [[1, 4, 5, 6], [3, 2, 7, 8], [7, 9, 0, 3]]
新数组: [[1, 3, 7], [4, 2, 9], [5, 7, 0], [6, 8, 3]]
```
.输出二维数组的的矩形方阵 例:1 2 3 4 5 6 7 8 输出: 1 2 3 4 5 6 7 8
你可以使用循环来输出二维数组的矩形方阵。假设你有一个名为array的二维数组,可以按照以下方式输出:
```python
array = [[1, 2, 3, 4], [5, 6, 7, 8]]
for row in array:
for element in row:
print(element, end="\t")
print()
```
这段代码会输出:
```
1 2 3 4
5 6 7 8
```
每个元素之间使用制表符(`\t`)分隔,每行结束后使用`print()`换行。