这是一道c语言的程序编译题

img

#include<stdio.h>
int main() {
    int a[4][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16};
    int i, j;

    for(i = 0; i < 4; i++) {
        int max = a[i][0];
        for(j = 1; j < 4; j++) {
            if(a[i][j] > max) {
                max = a[i][j];
            }
        }
        printf("第%d行最大值:%d\n", i + 1, max);
    }
    for(j = 0; j < 4; j++) {
        int min = a[0][j];
        for(i = 1; i < 4; i++) {
            if(a[i][j] < min) {
                min = a[i][j];
            }
        }
        printf("第%d列最小值:%d\n", j + 1, min);
    }
    int s = 0;
    for(i = 0; i < 4; i++) {
        for(j = 0; j < 4; j++) {
            if(i==j||i+j==3) {
                s+= a[i][j];
            }
        }    
    }
    printf("两条对角线累加和:%d", s);
    return 0;
}

#include <stdio.h>

int main(){
    int i,j,sum = 0;
    int a[4][4];
    printf("输入一个4*4的二维数组:\n");
    for(i = 0;i < 4;i++){
        for(j = 0;j < 4;j++){
            scanf("%d", &a[i][j]);
        }
    }
    for(i = 0;i < 4;i++){
        int max = a[i][0];
        for(j = 1;j < 4;j++){
            if(a[i][j] > max){
                max = a[i][j];
            }
        }
        printf("第%d行的最大值是:%d\n",i+1,max);
    }
    for(i = 0;i < 4;i++){
        int min = a[0][i];
        for(j = 1;j < 4;j++){
            if(a[j][i] < min){
                min = a[j][i];
            }
        }
        printf("第%d列的最小值是:%d\n",i+1,min);
    }
    for(i = 0;i < 4;i++){
        sum += a[i][i];
        sum += a[i][3-i];
    }
    printf("对角线累加和为:%d",sum);
    return 0;
}