程序复审

结对成员:闵芮  高琪

题目:求数组中所以子数组的和的最大值

设计思路:定义一个二维数组,sum[10][10]来记录a[10]所有子数组的和,sum[i][j]表示从a[i]开始加,加到a[j]的子数组的和,最后求出sum[10][10]中的最大值即为所有子数组和的最大值。

代码:

#include<iostream>
using namespace std;
int M(int a[10])
{
        int sum[10][10]={a[0]};
        int i,j;
        int max=sum[0][0];
        for(i=0;i<10;i++)
    {
           for(j=if;j<10;j++)
              sum[i][j]=sum[i][j-1]+a[j];
    }
       for(i=0;i<10;i++)
    {
          for(j=i;j<10;j++)
             if(max<sum[i][j])
                 max=sum[i][j];
    }
       return max;

}


void main()
{
      int a[10],max;
      cout<<"请输入数组元素:"<<endl;
      for(int i=0;i<10;i++)
           cin>>a[i];
      max=M(a);
      cout<<"字数组和的最大值是:"<<max<<endl;
}

设计草图:

原文地址:https://www.cnblogs.com/blaze04/p/3592166.html