首页 > 其他分享> > 一个有 N个元素的整型数组,求该数组的各个子数组中,子数组之和的最大值是多少? 例如数组 a[6]={-2,5,3,-6,4,-8,6};则子数组之和的最大值是 8(即 a[1]+a[2])。
一个有 N个元素的整型数组,求该数组的各个子数组中,子数组之和的最大值是多少? 例如数组 a[6]={-2,5,3,-6,4,-8,6};则子数组之和的最大值是 8(即 a[1]+a[2])。
作者:互联网
一个有 N个元素的整型数组,求该数组的各个子数组中,子数组之和的最大值是多少? 例如数组 a[6]={-2,5,3,-6,4,-8,6};则子数组之和的最大值是 8(即 a[1]+a[2])。
更多资料请点击:我的目录
#include <stdio.h>
int i ,j , N,max;
int main()
{
printf("请输入数组大小:");
scanf("%d",&N);
int arr[N];
int sum[100];
int max = 1;
printf("请输入数组各项数值):\n");
for( i = 0; i < N; i++)
{
scanf("%d",&arr[i]);
}
int *p = arr; //定义一个指针指向数组arr
for( i = 0; i < N; i++)
{
int s = 0; //每次sum相加结束后。初始化为0
for( j = 0; j < N-i; j++)
{
s += *(p+i+j); //将各项元素相加
sum[j] = s;
max = max > sum[j] ? max : sum[j]; //求最大值,赋给全局变量max
}
}
printf("\n%d\n",max); //输出最大值
}
更多资料请点击:我的目录
标签:求该,arr,int,max,最大值,数组,sum 来源: https://blog.csdn.net/weixin_43793181/article/details/103999255