输出二维数组m【3】【3】中的最大值 C语言

输出二维数组m【3】【3】中的最大值 用C语言表达

参考如下代码,如果对你有帮助,记得采纳一下哦~,谢谢O(∩_∩)O:

#include<stdio.h>

//首先指定M和N的值     m[3][3]  M=3,N=3

#define M 3

#define N 3  

int main()

{

printf("There are %d rows %d columns.\n", M, N); //输出到屏幕的提示信息  

int a[M][N] = { 0 }; //声明一个M行N列的数组,并将全部元素赋初值为0  

int i, j; //for循环中要用到  

for (i = 0; i < M; i++)

{

printf("input %d row's %d values: ", i + 1, N); //输出到屏幕的提示信息

for (j = 0; j < N; j++)

scanf("%d", &a[i][j]); //对第i行第j列的元素赋值

} 

int maxArr[M] = { 0 }; //声明一个含有M个元素的一维数组来存储M个行最大值 

for (i = 0; i < M; i++)

{

int max = a[i][0]; //先将每一行的第一个数作为最大值

for (j = 1; j < N; j++) //关键步骤——找出行最大值

if (max < a[i][j])

max = a[i][j];

maxArr[i] = max; //将行最大值存入行最大值数组中

}

for (i = 0; i < M; i++) //将每行最大的数输出

printf("%d ", maxArr[i]);

return 0;

}
int main()
{
    int a[3][3];
    int i,j,max=0;
    for(i=0;i<3;i++)
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
            if(i==0 && j==0)
                max = a[0][0];
            else if(max < a[i][j])
                max = a[i][j];
        }
    printf("最大值是:%d",max);
}