1102: C二级辅导-阶乘数列

1102: C二级辅导-阶乘数列

时间限制: 1 Sec   内存限制: 128 MB
提交: 594   解决: 213
[ IDE][ 提交][ 状态][ 讨论版]

题目描述

1+2!+3!+4!+…+30!

科学计数法,保留两位小数。

输入

输出

#include   
  
int main()  
{  
float sum=0,mul=1;  
for(int i=1;i<=30;i++)  
{  
mul=mul*i;  
sum=sum+mul;  
}  
printf("%.2e\n",sum);  
return 0;  
}  
以上是我借鉴了网上的,通过了,

但是下面自己写的显示答案错误,好像是我自己想复杂了。

#include   
#include   
  
int F(int x)  
{  
    int i;
	float ans=1;  
    for(i=1;i<=x;i++)  
    {  
        ans*= i;  
    }  
    return ans;  
}  
  
int main()  
{  
    int i;
	float ans=0;    
    for(i=1;i<=30;i++)  
    {  
        ans+=F(i);  
    }  
    printf("%.2lf\n",ans);  
    return 0;  
}  




你可能感兴趣的:(C语言)