简单序列求和

来源:互联网 发布:java开发手册 chm 编辑:程序博客网 时间:2024/06/07 07:09

问题描述:

求下列序列的和:
1 + (1 + 2) + (1 + 2 + 3) + … + (1 + 2 + 3 + … + n)

比如当n输入为3的时候,则和为1 + 3 + 6 = 10

参考代码1:

#include <stdio.h>int main(){    int n;    printf("输入求和的最大项数: ");    scanf_s("%d", &n);    int i, j, sum = 0;;    for (i = 1; i <= n; i++)    {        for (j = 1; j <= i; j++)        {            sum += j;        }    }    printf("sum=%d\n", sum);    return 0;}

参考代码2:

#include <stdio.h>int main(){    int n;    printf("输入求和的最大项数: ");    scanf_s("%d", &n);    int i, j, sum = 0;;    for (i = 1; i <= n; i++)    {        sum += (1 + i) * i / 2;//后面的求从1-i的和用求和公式    }    printf("sum=%d\n", sum);    return 0;}

运行结果:

这里写图片描述

3 0
原创粉丝点击