题目描述
求1+2!+3!+4!+…+30!。
科学计数法,保留两位小数。
#include<stdio.h>
double jiecheng(int i){
double ret=1;
for(int j=1;j<=i;j++){
ret*=j;
}
return ret;
}
int main()
{
double sum=0;
for(int i=1;i<=30;i++){
sum+=jiecheng(i);
}
printf("%.2e\n",sum);
return 0;
}
在C语言中,科学计数法(%e)是将浮点数(实数)以10的指数的形式表示出来,注意科学计数法表示的是浮点数,如果printf中的参数是整型类型,则会以浮点数的形式去看这个整数,然后再输出成科学计数法,就会造成错误。