最大子数组(首尾相连)
#include<stdio.h>
int main()
{
int a[5];
int i,j=0,m,n=0,max;
int b[5][5];
printf("请输入一维数组:\n");
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<5;i++)
{
printf("%d",&a[i]);
}
for (i=0;i<5;i++)
{
m=i;
n=0;
j=0;
while (j<=4)
{
n+=a[m];
b[i][j]=n;
m++;
if (m>4)
{
m=0;
}
j++;
}
}
max=b[0][0];
for (i=0;i<5;i++)
{
for (j=0;j<5;j++)
{
if (b[i][j]>max)
{
max=b[i][j];
}
}
}
printf( "\n最大子数组的值为:%d\n",max );
return 0;
}
浙公网安备 33010602011771号