下面将演示,如何使用嵌套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
来启动外部循环。