用C语言计算:s=1-1/2!+2/3!+……+((-1)^(n-1))(n-1)/n!,下面的程序是我写的,可是运行错误怎么改。 10

#include<stdio.h>doublef(intn);intmain(void){inti,n,den,flag;doublesum,item;#include<... #include<stdio.h>
double f(int n);
int main(void)
{
int i,n,den,flag;
double sum,item;
#include<stdio.h>
double f(int n);
int main(void)
{
int i,n,den,flag;
double sum,item;
printf ("enter n:");
scanf("%d",&n);
den=0;flag=-1;sum=0;
for(i=0;i<=n;i++){
item=flag*1.0*(den-1)/f(den);
sum=sum+item;
flag=-flag;
den=den+1;
}
printf("sum=%f\n",sum);
return 0;
}
double f(int n){
int i;
double f=1.0;
for(i=1;1<=n;i++)
f*=i;
return f;
}
展开
 我来答
钱传杰ha
2016-06-18 · TA获得超过303个赞
知道小有建树答主
回答量:314
采纳率:0%
帮助的人:162万
展开全部
由于你的n是int型,则1/n是整数,程序中的1/n或(-1)/n一直是0,所以s一直都是0;将t=1/n和t=(-1)/n改为t=1/(float)n和t=-1/(float)n即可,即将n强制转换为float型,这样1/n就可以表示为小数了。
追问
能打一下代码吗
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式