c语言如何求一个数的阶乘(C语言基础练习09-求阶乘累加和)
c语言如何求一个数的阶乘(C语言基础练习09-求阶乘累加和)(1)注意变量设置,累乘可能是一个较大的数,变量定义时使用double类型。(2)sum = sum n;将每个循环变量的累乘进行累加求和。(1)当i=1,循环条件成立,执行n = n*i = 1*1;sum = sum n = 0 1 = 1(2)当i=2,循环条件成立,执行n = 1*i = 1*2;sum = sum n = 1 2 = 3
C语言求1 2! 3! ... 20!的和。
分析对于累加采用for循环,设置变量sum和循环变量进行累加。
#include<stdio.h>
int main(void){
int i;
int sum;
for(i=1;i<=10;i ){
sum = sum i;
}
return 0;
}
而求阶乘只是把累加换成了累乘。
代码实现#include<stdio.h>
int main(void){
int i;
double sum n;
sum = 0;
n = 1;
for(i=1;i<=20;i ){
n = n * i;
sum = sum n;
}
printf("%lf\n" sum);
return 0;
}
程序分析
(1)n = n * i;根据循环,求出每个循环变量的累乘。
(2)sum = sum n;将每个循环变量的累乘进行累加求和。
(1)当i=1,循环条件成立,执行n = n*i = 1*1;sum = sum n = 0 1 = 1
(2)当i=2,循环条件成立,执行n = 1*i = 1*2;sum = sum n = 1 2 = 3
运行结果 总结(1)注意变量设置,累乘可能是一个较大的数,变量定义时使用double类型。