作业帮 > 综合 > 作业

C语言编程:计算并输出下列多项式的值 F(m)=1+1/(1!)+1/(2!)+.+1/(m!)

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/25 01:17:45
C语言编程:计算并输出下列多项式的值 F(m)=1+1/(1!)+1/(2!)+.+1/(m!)
#include
main()
{
int i,m;
double h,sum=1.0,s;
scanf("%d",&m);
for(i=1,h=1.0;i1)
sum=sum+h;
}
if(i=1)
printf("%f",sum);
else
printf("%f",sum+1);
}
我的程序算法不知道有没有错,但我的算法不执行if后面的语句,请问哪里有问题
if(i=1) //判断相等是用 == 不是=?
printf("%f",sum);
else
printf("%f",sum+1);
还有你算for循环中计算的s是不对的,最后的结果也不正确
再问: 对,我的判别等号写错了,还有“s=1/i”应该改为“s=1.0/i”,但我现在想问的是最后答案:当输入的i大于2时,sum用不用加1
再答: 如果要用加1 那么输入1时也需要啊??? 按照你给的式子 F(m)=1+1/(1!)+1/(2!)+.....+1/(m!) 如果输入1,则结果为2??? 这个式子是这样理解的吗??但你的程序中如果输入1,你的结果为1??