请问怎么在这段代码中加求最大最小值位置的代码

img


#include
int main(){
int a[5][5]={11,12,13,14,15,6,7,8,9,10,1,2,3,4,5,21,22,23,24,25,16,17,18,19,20},sum=0,i,j;
printf("数组:\n");
for(i=0;i<5;i++)
{for(j=0;j<5;j++)
printf("%3d",a[i][j]);
printf("\n");}
for(i=0;i<5;i++)
for(j=0;j<5;j++)
if(i==j||i+j==65)
sum=sum+a[i][j];
printf("对角线之和:%d\n",sum);
return 0;
}

#include <stdio.h>

int main(){
    int a[5][5]={11,12,13,14,15,6,7,8,9,10,1,2,3,4,5,21,22,23,24,25,16,17,18,19,20},sum=0,i,j;
    int max=a[0][0], max_i, max_j;
    int min=a[0][0], min_i, min_j;
    printf("数组:\n");
    for(i=0;i<5;i++)
    {
        for(j=0;j<5;j++)
            printf("%3d",a[i][j]);
        printf("\n");
    }
    for(i=0;i<5;i++)
    {
        for(j=0;j<5;j++)
        {
            if (a[i][j] > max)
            {
                max = a[i][j];
                max_i = i;
                max_j = j;
            }
            if (a[i][j] < min)
            {
                min = a[i][j];
                min_i = i;
                min_j = j;
            }
            if(i==j||i+j==65)
                sum=sum+a[i][j];
        }    
    }
    printf("最大值:%d 坐标(%d, %d)\n",max, max_i, max_j);
    printf("最小值:%d 坐标(%d, %d)\n",min, min_i, min_j);
    printf("对角线之和:%d\n",sum);
    return 0;
}

对角线之和要有2个。

img


源代码:

#include <stdio.h>
int main(){
int a[5][5]={11,12,13,14,15,6,7,8,9,10,1,2,3,4,5,21,22,23,24,25,16,17,18,19,20};
int sum1=0,sum2=0,i,j,min,minx,miny,max,maxx,maxy;
printf("a[5][5]: \n");
for(i=0;i<5;i++)
{for(j=0;j<5;j++)
printf("%3d",a[i][j]);
printf("\n");}
min=a[0][0];
max=a[0][0];
minx=0;
miny=0;
maxx=0;
maxy=0;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
if(max<a[i][j]) { 
//min=a[i][j];
max=a[i][j];
//minx=i;
//miny=j;
maxx=i;
maxy=j;
};
if(min>a[i][j]) { 
min=a[i][j];
//max=a[i][j];
minx=i;
miny=j;
//maxx=i;
//maxy=j;
};
if(i==j)
{
//printf("[%d][%d] %d ",i,j,a[i][j]);
sum1=sum1+a[i][j] ;
}
if(i==4-j)
{
//printf("[%d][%d] %d ",i,j,a[i][j]);
sum2=sum2+a[i][j] ; 
}    
}
printf("max: a[%d][%d] %d\n",maxx,maxy,max);
printf("min: a[%d][%d] %d\n",minx,miny,min);
printf("diagonal sum : %d %d\n",sum1,sum2);
return 0;
}