查找数组中两个数字的最大和

时间:2019-04-10 16:56:22

标签: c arrays sorting

“-1 7 8 -5 4”这是我们必须找到两个整数最大可能和的数组。例如,对于此数组,输出应为8 + 4 = 12,因为数组从索引0开始,增量应为2

1 个答案:

答案 0 :(得分:0)

根据假设少数条件,例如提供的数组大小和数组数据类型为整数,可以使用以下程序作为参考。 该程序没有。元素和数组作为输入。

#include<stdio.h>
#include<limits.h>

int main(){

    int n;
    int a[100];
    printf("Size of the array:");
    scanf("%d", &n);
    for(int i = 0; i < n; i++){
        printf("Enter array element a[%d]:", i);
        scanf("%d", &a[i]);
        printf("\n");
    }

    int max = INT_MIN;
    int sum = 0, k = 0, l = 0;
    for(int i = 0; i < n-2; i++){
        sum = a[i] + a[i+2];
        if(max < sum){
            max = sum;
            k = i;
            l = i+2;
        }
    }
    printf("max sum is: %d using index: a[%d] and a[%d]\n", max, k, l);
}

输入

5

-1 7 8 -5 4

输出

最大和为:12,使用索引:a [2]和a [4]