c程序设计:输入一个正整数 n,输出 2/1+3/2+5/3+8/5+……前n项之和

输入一个正整数repeat(0<repeat<10),做repeat次下列运算:输入一个正整数n,输出2/1+3/2+5/3+8/5+……前n项之和,保留2位小数。(该序... 输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算:
输入一个正整数 n,输出 2/1+3/2+5/3+8/5+……前n项之和,保留2位小数。(该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子
输入输出示例:括号内是说明
输入
3 (repeat=3)
1 (n=1)
5 (n=5)
20 (n=20)
输出
sum = 2.00 (第1项是2.00)
sum = 8.39 (前5项的和是8.39)
sum = 32.66 (前20项的和是32.66)

#include <stdio.h>
int main(void)
{
int i, n;
int repeat, ri;
double denominator, numerator, sum, temp;

scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
scanf("%d", &n);
/*---------*/
printf("sum = %.2f\n",sum);
}
}
我的程序:
#include <stdio.h>
int main(void)
{
int i, n;
int repeat, ri;
double denominator, numerator, sum, temp;

scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
scanf("%d", &n);
/*---------*/
denominator=1;
numerator=2;
sum=0;

for(i=1;i<=n;i++){
temp=numerator/denominator;
sum=sum+temp;
numerator=numerator+denominator;

denominator=denominator+1;

}

printf("sum = %.2f\n",sum);
}
}
出来的数和答案不一样,请问是什么原因
展开
 我来答
CiciBARpr
2013-04-21
知道答主
回答量:3
采纳率:0%
帮助的人:2760
展开全部
denominator=denomnator+1应该改成
denominator=numerator-denominator
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
三酉木木年华
2010-04-10 · TA获得超过131个赞
知道答主
回答量:95
采纳率:0%
帮助的人:79.8万
展开全部
哥你可以去问老师了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我为YONG着迷
2019-05-25
知道答主
回答量:1
采纳率:0%
帮助的人:741
展开全部
是因为ri的循环每进行一次denominator,numetator,sum都要重新赋值一次
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式