编辑代码

#include <stdio.h>

int main() {
    int arr[5][5];
    int max = arr[0][0], min = arr[0][0];
    int max_row = 0, max_col = 0, min_row = 0, min_col = 0;
    int sum = 0;

    // 输入二维数组
    printf("请输入一个5行5列的二维数组:\n");
    for (int i = 0; i < 5; i++) {
        for (int j = 0; j < 5; j++) {
            scanf("%d", &arr[i][j]);
        }
    }

    // 求最大值、最小值及其对应的行列位置
    for (int i = 0; i < 5; i++) {
        for (int j = 0; j < 5; j++) {
            if (arr[i][j] > max) {
                max = arr[i][j];
                max_row = i;
                max_col = j;
            }
            if (arr[i][j] < min) {
                min = arr[i][j];
                min_row = i;
                min_col = j;
            }
        }
    }
    printf("最大值:%d,位置:第%d行第%d列\n", max, max_row+1, max_col+1);
    printf("最小值:%d,位置:第%d行第%d列\n", min, min_row+1, min_col+1);

    // 求上三角的元素之和
    for (int i = 0; i < 5; i++) {
        for (int j = i+1; j < 5; j++) {
            sum += arr[i][j];
        }
    }
    printf("上三角的元素之和:%d\n", sum);

    return 0;
}