噫吁汐 2021-11-19 09:43 采纳率: 95%
浏览 97
已结题

c语言,求1+1/3+1*2/3*5+。。,输出的值一样

#include<stdio.h>
int s(int n)
{
float i,j,s=0,x=1.0,y=1.0;
for(i=1;i<n;i++)
{
x=xi;
y=y
(2*i-1);
s=s+x/y;
}

输入4
应输出:1.5492063492
实际输出:2.000000
输入25
应输出:1.5707963218
实际输出:2.000000

return s;

}
int main(void)
{
int n;
double a;
scanf("%d",&n);
a=s(n);
printf("%lf",a);
return 0;
}

  • 写回答

2条回答 默认 最新

  • bekote 2021-11-19 09:58
    关注
    
    #include<stdio.h>
    double s(int n)
    {
    double i,j,s=1.0,x=1.0,y=1.0;
    for(i=1;i<=n;i++)
    {
    x=x*i;
    y=y*(2*i+1);
    s=s+x/y;
    }
    return s;
    }
    int main(void)
    {
    int n;
    double a;
    scanf("%d",&n);
    a=s(n);
    printf("%.10lf",a);
    return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月27日
  • 已采纳回答 11月19日
  • 创建了问题 11月19日