易百教程

使用嵌套for循环对连续整数序列求和

下面将演示,如何使用嵌套for循环对连续整数序列求和。

示例代码

#include <stdio.h>

int main(void)
{
      unsigned long sum = 0UL;  // 存储整数之和
      unsigned int count = 0;   // 要计算的总和整数的数量

      // 提示,并读取输入计数
      printf("\n输入要求的总和数量: ");
      scanf(" %u", &count);

      for(unsigned int i = 1 ; i <= count ; ++i)
      {
        sum = 0UL;  // 初始化内循环的总和

        // 计算从1到i的整数之和
        for(unsigned int j = 1 ; j <= i ; ++j)
          sum += j;

        printf("\n%u\t%5lu", i, sum);// 输出和为1到i
      }
      printf("\n");
      return 0;
}

执行上面示例代码,得到以下结果:

hema@ubuntu:~/book$ gcc main.c
hema@ubuntu:~/book$ ./a.out

输入要求的总和数量: 20

1           1
2           3
3           6
4          10
5          15
6          21
7          28
8          36
9          45
10         55
11         66
12         78
13         91
14        105
15        120
16        136
17        153
18        171
19        190
20        210

程序计算从1到输入的计数值的所有值的整数之和。内部循环完成外部循环的每次迭代的所有迭代。外部循环设置i的值,确定内部循环重复的次数:

for(unsigned int i = 1 ; i <= count ; ++i)
{
    sum = 0UL;  // 初始化内循环的总和

    // 计算从1到i的整数之和
    for(unsigned int j = 1 ; j <= i ; ++j)
        sum += j;

    printf("\n%u\t%5lu", i, sum);// 输出和为1到i
}

通过将变量i的值初始化为1来启动外部循环。