标题:这是道多项式求和的练习题,可以运行,但是求出来答案不符,求大佬指点
只看楼主
ZAIM
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-11-8
 问题点数:0 回复次数:5 
这是道多项式求和的练习题,可以运行,但是求出来答案不符,求大佬指点
题目:输入一个正整数m,计算y的值。y=1+1/3+1/5+…+(2m+1)。
要求:输入为一个正整数;输出为一个实数,保留小数点后六位。
验证例子:输入9,得2.133256。

这个是我自己写的,不知道该怎么改。求大大们指明。
#include<stdio.h>
main()
{
       int m,i,j;
       double y;
       scanf("%d",&m);
       j=2*m+1;
       for(i=1;i<=j;i+=2)
             y+=1/i;
       printf("%.6g",y);
}
搜索更多相关主题的帖子: 练习题 double 多项式 小数点 正整数 
2016-11-15 01:06
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
得分:0 
y+=1/i;  y+=1.0*1/i;      强制转换

早知做人那么辛苦!  当初不应该下凡
2016-11-15 01:12
ZAIM
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-11-8
得分:0 
回复 2楼 炎天
大大,我改了,但是。。。结果还是错的没有改变,是我之前编写错误了么?
2016-11-15 09:15
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:0 
程序代码:
#include<stdio.h>
main()
{
    int m, i, j;
    double y = 0;        //y没初值
    scanf("%d", &m);
    j = 2 * m + 1;
    for (i = 1; i <= j; i += 2)
        y += 1.0 / i;
    printf("%.6g", y);
}
2016-11-15 09:25
ZAIM
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-11-8
得分:0 
回复 2楼 炎天
天呐噜,我这才发现哪里错了。
我忘记给y赋值了。
谢谢大大指点,开心死了。
2016-11-15 09:26
ZAIM
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-11-8
得分:0 
回复 4楼 grmmylbs
非常感谢大大你的指点
2016-11-15 09:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-471140-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011931 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved