题目内容:输入1 个正整数n,计算 s 的前n项的和。
s = 1 + 1/2! +....+ 1/n!
方法1:【两次for循环】
double fun(int n)
{
double s = 1.0,s_ = 1.0;
int i,m;
for(i=1;i<=n;i++)
{
s_ = 1.0;
for(m=1;m<=i;m++)
{
s_ = s_ * m;
printf("%lf\n",s_);
}
s = s + (1.0/s_);
}
return s;
}
void main()
{
int n;
printf("input n:");
scanf("%d",&n);
printf("s = %f\n",fun(n));
system("pause");
}
方法2:【1次for 循环】
double fun(int n)
{
double temp = 1;
double s = 1;
for(int i=1;i<=n;i++)
{
temp /= i;
s += temp;
}
return s;
}
void main()
{
int n;
printf("input n:");
scanf("%d",&n);
printf("s = %f\n",fun(n));
system("pause");
}