连续三个数据元素和一维数组首尾相连什么意思

找出具有10个整数的一维数组中连续三个数据元素和最大的数据元素,并输出。(注意该一维数组首尾相连)

连续三个数据元素和一维数组首尾相连什么意思?
这个题目的思路是什么?

连续三个数据元素是a[0] - a[2]、a[1]-a[3]这样
一维数组首尾相连是指a[9] 、a[0]、a[1]作为一组
这个题目是求连续三个数的和中最大的是多少。
一种思路:
可以定义一个12个元素大小的数组,然后把第一个和第二个元素放到数组的最后面,每3个数一组求和,比较大小,找出最大的即可
也可以先找出a[8]+a[9]+a[0]和a[9]+a[0]+a[1]中的最大值,然后跟其他组的和进行比较。
运行结果:

img

代码:

#include <stdio.h>

int main()
{
    int a[10],i;
    int maxsum = 0,s=0;
    printf("请输入10个数:\n");
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);

    s = a[8] + a[9] + a[0]; 
    maxsum = a[9] + a[0] + a[1]; //先找出a[9]和a[0]/a[1]这3个元素的和

    if(s > maxsum)
        maxsum = s; 
    //在找其他的组
    for(i=0;i<8;i++)
    {
        s = a[i] + a[i+1]+a[i+2];
        if(s>maxsum)
            maxsum = s;
    }
    printf("%d",maxsum); //输出最大值
    return 0;
}

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632