用C语言采用递归方法求sum=1+ 1/(1*2) + 1/(2*3) + 1/(3*4) +…… + 1/(n*(n+1))的值
#include<stdio.h>floatsum(intn){floats;s=sum(n);if(n=1)s=3/2;elses=sum(n-1)+(1/n*(n+1...
#include <stdio.h>
float sum(int n)
{
float s;
s=sum(n);
if (n=1)
s=3/2;
else s=sum(n-1)+(1/n*(n+1));
return(s);
}
void main()
{
int n;
float s;
s=sum(n);
scanf("%d\n",n);
printf("%f,\n",s);
}
这个有什么错误的地方? 展开
float sum(int n)
{
float s;
s=sum(n);
if (n=1)
s=3/2;
else s=sum(n-1)+(1/n*(n+1));
return(s);
}
void main()
{
int n;
float s;
s=sum(n);
scanf("%d\n",n);
printf("%f,\n",s);
}
这个有什么错误的地方? 展开
1个回答
展开全部
#include <stdio.h>
float sum(int n)
{
float s;
//s=sum(n);
if (n==0)
{
s=1;
}
else
{
s=1.0/(n*(n+1))+sum(n-1);
}
return s;
}
void main()
{
int n;
float s;
scanf("%d",&n);
s=sum(n);
printf("%f,\n",s);
}
这样改
float sum(int n)
{
float s;
//s=sum(n);
if (n==0)
{
s=1;
}
else
{
s=1.0/(n*(n+1))+sum(n-1);
}
return s;
}
void main()
{
int n;
float s;
scanf("%d",&n);
s=sum(n);
printf("%f,\n",s);
}
这样改
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询