要求编制1个程序完成输入1个正整数,求该正整数的所有连续正整数和等于该整数的序,在线等!急!

2025-06-28 03:39:08
推荐回答(1个)
回答1:

#include 

int seq(int start, int end, int n, int &len) {
    int i, sum = 0;
    for (i=start;i<=end;i++) {
        sum += i;
        if (sum == n) {
            len = (i-start+1);
            return 1;
        }
        if (sum>n) break; //加快速度
    }
    return 0;
}

int main() {
    int n, i, j, len;
    int a[200][2], index=0;

    printf("Input n:");
    scanf("%d", &n);


    for (i=1;i<=n;i++) {
        if (seq(i, n, n, len)) {
           a[index][0] = i;
           a[index++][1] = i+len;
        }
    }
    printf("整数%d有%d种连续整数序列\n", n, index);
    printf("整数%d的连续整数序列为:\n", n);
    for (i=0;i        for (j=a[i][0];j            printf("%d+",j);
        }

        printf("%d\n", j);
    }
}