/*
计算一串连续数组的之间 连续几个数(任意连续)之和的最大值
no zuo no die
*/
#include "stdio.h"
#include "stdlib.h"
#define N 4
void main()
{
//int a[N]={5,3,-1,4,-3,-1,0,-5};//可以提前定义几个数组成员
int a[N];
int i,j,temp;
int max=0;
printf("please input %d numbers(At least a positive number):\n",N);//方法二:用户自己来写数据,通过N来改变输入数字的个数
for(i=0;i<N;i++)
{
printf("please input a number: ");
scanf_s("%d",&a[i]);
//取数
}
for(i=0;i<N;i++)
{
temp=0; //暂时变量temp=0,每次循环都将上一次的数值清零
for(j=i;j<N;j++)
{
temp=temp+a[j]; //暂时变量temp,来计算每次循环的连续数之和
if(temp>max)
{
max=temp; //比较最大者
}
}
}
printf("\n continuous max=%d\n\n",max);
system("pause");
}