【例2.1.1】求求 1×2×3×4×5的值
最原始方法:
步骤 1:先求 1×2,得到结果 2。
步骤 2:将步骤 1 得到的乘积 2 乘以 3,得到结果 6。
步骤 3:将 6 再乘以 4,得 24。
步骤 4:将 24 再乘以 5,得 120。
如此计算答案虽然正确,但过于繁琐,当你需要追求低延迟,高效率时这种方法显然是不可取的
那么就有了以下改进的算法:
S1: 使 t=1
S2: 使 i=2
S3: 使 t×i, 乘积仍然放在在变量 t 中,可表示为 t×i→t
S4: 使 i 的值+1,即 i+1→i
S5: 如果 i≤5, 返回重新执行步骤 S3 以及其后的 S4 和 S5;否则,算法结束
#include<stdio.h>
int main()
{
int i=1,t=2;//定义自变量i,t
while(t<=5)//while循环体,计算1*2*3*4*5
{
i=i*t;
t=t+1;
}
printf("%d\n",i);//输出结果
return 0;
}
/*计算机的运算过程--个人理解与程序回忆
定义一个整型数名为i和t,且分别赋值为i=1,t=2
先判断是否符合条件以进入循环t<=5,t=2符合条件则进入循环
第一步
i=1 t=2
i=1*2
t=2+1
第二步
i=2 t=3
i=2*3
t=3+1
第三步
i=6 t=4
i=6*4
t=4+1
第四步
i=24 t=5
i=24*5
t=5+1
第五步
再判断发现
i=120 t=6
t=6已不符合while的条件(t<=5)
则跳出循环
得出结果输出答案“i=120”
*/