标签:
题目:返回一个整数数组中最大子数组的和。
#include<iostream> using namespace std; int main() { int Array[100]; int max(int A,int B); int i, length = 0;//用来记录数组长 int sumOfArray;//sumOfArray用于存放包含目前的子数组的和的最大值 int sum = 0;//sum用来存放不包含当前数的所有子数组的和的最大值 cout << "请输入数组:" ; for (length = 0;;) { cin >> Array[length]; length++; if (getchar() == ‘\n‘) { break; } } sumOfArray = Array[0]; for (i = 1; i < length; i++) { sum = max(sum, sumOfArray); sumOfArray = max((sumOfArray+Array[i]), Array[i]); } sumOfArray = max(sum, sumOfArray); cout << "这个整数数组的子数组之和的最大值为:" << sumOfArray << endl; return 0; } int max(int A, int B) { if (A > B) { return A; } else { return B; } }
标签:
原文地址:http://www.cnblogs.com/wanzitou/p/5322977.html