返回一個二維整數陣列中的最大的子陣列和
阿新 • • 發佈:2018-11-07
一。題目:
1、輸入一個二維整形陣列,數組裡有正數有負數。
2、二維陣列中連續的一個子矩陣組成一個子陣列。
3、求所有子陣列的和的最大值。
二.設計思想:
.定義一個二維陣列,使用二重迴圈對其進行賦值,對其進行遍歷,定義一個變數tmd,將每行的最大值賦值給他,並對這個最大值進行累加,輸出這個最大值的和。
三.
原始碼:
#include<stdio.h>
#include<string.h>
#define M 3
#define N 3
void main()
{
int a[M][N];
int sum=0;
int tmd=0;
for (int i=0;i<M;i++)
{
for(int j=0;j<N;j++)
{
scanf("%d",&a[i][j]);
}
}
for (int i=0;i<M;i++)
{
tmd=0;
for (int j=0;j<N;j++)
{
if(a[i][tmd]<a[i][j])
tmd=j;
printf("The max num of Line %d is %d\n",i+1, a[i][tmd]);
sum+= a[i][tmd];
}
}
printf("The sum is %d\n",sum);
}
三,結果:
四,總結
通過本次實驗我們對二維陣列有了更深刻的認識,成功完成了二維陣列的最大子陣列,同時我們結對開發,開發之前進行了分配任務,之後兩個人積極的進行開發,最後在齊心合力的努力下,順利完成任務。
五,照片展示