求S=1/1!+1/2!+1/3!+…+1/N!并输出结果(显示时小数部分占16位)
答案:2 悬赏:0 手机版
解决时间 2021-01-18 11:20
- 提问者网友:不爱我么
- 2021-01-18 02:59
求S=1/1!+1/2!+1/3!+…+1/N!并输出结果(显示时小数部分占16位)
最佳答案
- 五星知识达人网友:低音帝王
- 2021-01-18 03:16
#include
int main(void)
{
int i,j,x;
double n=1,sum=0;
scanf("%d",&x);
for(i=1;i<=x;i++)
{
for(j=1;j<=i;j++)
n*=1/double(j);
sum+=n;
}
printf("
S=1/1!+1/2!+...+1/%d!=%.12f
", x,sum);
return 0;
}
追问for(j=1;j<=i;j++)
n*=1/double(j);
sum+=n;
这些能解释一下么,我是初学者。。追答怎么解释啊?
for(i=1;i<=x;i++)
{
for(j=1;j<=i;j++)
{
n*=1/double(j);
}
sum+=n;
}就是这个意思咯!
int main(void)
{
int i,j,x;
double n=1,sum=0;
scanf("%d",&x);
for(i=1;i<=x;i++)
{
for(j=1;j<=i;j++)
n*=1/double(j);
sum+=n;
}
printf("
S=1/1!+1/2!+...+1/%d!=%.12f
", x,sum);
return 0;
}
追问for(j=1;j<=i;j++)
n*=1/double(j);
sum+=n;
这些能解释一下么,我是初学者。。追答怎么解释啊?
for(i=1;i<=x;i++)
{
for(j=1;j<=i;j++)
{
n*=1/double(j);
}
sum+=n;
}就是这个意思咯!
全部回答
- 1楼网友:患得患失的劫
- 2021-01-18 03:31
阶乘那个你得自己搞个迭代函数啊,用!这个C 不能识别
例如求10!
main()
{
int i=2,n=10;
float fac=1;
if(n==1||n==0)
{
printf("the number is 1\n");
return 0;
}
while(i<=n)
{
fac=fac*i;
i++;
}
printf("the number is %.2f\n",fac);
}追问美学过什么迭代函数。。。
例如求10!
main()
{
int i=2,n=10;
float fac=1;
if(n==1||n==0)
{
printf("the number is 1\n");
return 0;
}
while(i<=n)
{
fac=fac*i;
i++;
}
printf("the number is %.2f\n",fac);
}追问美学过什么迭代函数。。。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯