c语言题目 输入正整数n,求 S=2/1-3/2+5/3-8/5+…的前n项之和并输出该和值。 5

提示:正负项交替,当前项的分子是前一项分子与分母之和,当前项的分母是前一项的分子。我写的好像从4就开始错,求大佬解答哪错了??#include<stdio.h>#incl... 提示:正负项交替,当前项的分子是前一项分子与分母之和,当前项的分母是前一项的分子。
我写的好像从4就开始错,求大佬解答哪错了??
#include <stdio.h>
#include <stdlib.h>
提示:正负项交替,当前项的分子是前一项分子与分母之和,当前项的分母是前一项的分子。
我写的好像从4就开始错,求大佬解答哪错了??
int main()
{
double item=2;
float sum=0.0;
int i=1;
int n;
int sign=1;
printf("Please input a intenger n:\n");
scanf("%d",&n);

do
{
sum=sum+sign*(item *1.0/i);
item=item+i;
i++;
sign=-sign;
} while(i<=n);
printf("sum=%lf",sum);
system("pause");
return 0;
}
有一段话打了两次,请忽略对不起。。。
展开
 我来答
cylz0703
2018-11-20 · TA获得超过3.4万个赞
知道大有可为答主
回答量:1.8万
采纳率:83%
帮助的人:4416万
展开全部
逻辑有些混乱,需要好好整理一下思路,修改如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
double t1=1,t2=2,sum=0.0,t;//统一数据类型
int i=0,n,sign=1;
printf("Please input a intenger n:\n");
scanf("%d",&n);

do{
sum=sum+sign*(t2/t1);
t=t2+t1;
t1=t2;
t2=t;
sign=-sign;
++i;
}while(i<n);
printf("sum=%lf",sum);
system("pause");
return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听不清啊
高粉答主

2018-11-20 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
#include<stdio.h>
#include<stdlib.h>
int main()
{ double a=2,b=1,c;
double sum=0.0;
int i=1;
int n;
int sign=1;
printf("Please input a intenger n: ");
scanf("%d",&n);
do
{ sum=sum+sign*(a/b);
c=a+b;
b=a;
a=c;
i++;
sign=-sign;
}
while(i<=n);
printf("sum=%lf",sum);
system("pause");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式