题目:求1+2+3+……+98+99+100
(1)用数学方法求解
(2)编写C语言程序求解
解:
(1)数学方法
S = 1+2+3+……+98+99+100
=(1+100) + (2+99) + (3+98) + …… + (49+52) + (50+51) =101 * 50 =5050
(2)C语言编程
#include
int main()
{
int sum = 0; // 赋初值
for(int i = 1; i <= 100; i++)
{
sum = sum + i;
}
printf("total is %d\n", sum);
}
运行结果:
total is 5050
分析:
(1)第一次循环
i = 1, sum = sum + i = 0 + 1 = 1,这里右边的sum的值为初值0,将1赋给左边的sum后,sum的最新值变成了1
(2)第二次循环
i = 2, sum = sum + i = 1 + 2 = 3, 这里右边的sum的值已经通过上一步的计算变成了1。把3赋值给左边的sum后,sum的最新值就成了3