題目描述:
撰寫程式,找出m行n列的二維陣列中所有元素的最大值。輸入分m+1行:第一行為m和n的值,以下m行代表二維陣列,其中每一行包括n個數。
例如,輸入如下
3 3
1 2 3
4 5 6
7 8 9
第一行的3 3 表示3行3列
則輸出為
9
輸入
3 3
1 2 3
4 5 6
7 8 9
輸出
9
樣例輸入
3 3
1 2 3
4 5 6
7 8 9
樣例輸出
9
程式如下:
#include <stdio.h>
#define N 100
void main()
{
int a[N][N],n1,n2,i,j,max,t;
scanf("%d%d",&n1,&n2); //輸入陣列的行和列
for(i=0;i<n1;i++) //輸入陣列
for(j=0;j<n2;j++)
scanf("%d",&a[i][j]);
max=a[0][0];
for(i=0;i<n1;i++) //找出陣列中最大的數
for(j=0;j<n2;j++)
if(max<a[i][j])
{
t=a[i][j];
a[i][j]=max;
max=t;
}
printf("%d\n",max); //輸出陣列中最大的數
}
uj5u.com熱心網友回復:
#include <stdio.h>
#define N 100
int main()
{
int a[N][N],n1,n2,i,j,max,t;
scanf("%d%d",&n1,&n2); //輸入陣列的行和列
if (n1 > N)
n1 = N;
if (n2 > N)
n2 = N;
for(i=0;i<n1;i++) //輸入陣列
for(j=0;j<n2;j++)
scanf("%d",&a[i][j]);
max=a[0][0];
for(i=0;i<n1;i++) //找出陣列中最大的數
for(j=0;j<n2;j++)
if(max<a[i][j])
{
max = a[i][j];
/*
t=a[i][j];
a[i][j]=max;
max=t;
*/
}
printf("%d\n",max); //輸出陣列中最大的數
}
供參考~
uj5u.com熱心網友回復:
多謝,這位大佬助我改正!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/267898.html
標籤:C語言
上一篇:GLUT鍵盤輸入問題
下一篇:字符檔案處理系統
