1.利用while循环
在定义sum的时候不能用int,因为int的数据范围不够,应该用double类型
#include <stdio.h>
int main()
{
int i=1;
double sum=0; //不能用int,因为int的数据范围不够
double a=1.0;
while(i<=20){ //因为i要从1到20且i=1,故循环的条件是i<=20
a*=i; //先利用a进行累乘
sum+=a; //再用sum累加
++i; //i的自加
}
printf("sum=%.0lf\n",sum);
return 0;
}
2.利用for循环
#include <stdio.h>
int main()
{
int i=1;
double sum=0;
double a=1.0;
for(i=1;i<=20;++i){
a*=i;
sum+=a;
}
printf("sum=%.0lf\n",sum);
return 0;
}
3.用do-while语句
#include <stdio.h>
int main()
{
int i=1;
double sum=0; //不能用int,因为int的数据范围不够
double a=1.0;
do
{
a*=i; //先利用a进行累乘
sum+=a; //再用sum累加
++i; //i的自加
}
while(i<=20);
printf("sum=%.0lf\n",sum);
return 0;
}