| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1147 人关注过本帖
标题:为啥我输入1,4,1000输出999,而输入1,2,1000输出1000
只看楼主 加入收藏
刘学海1
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-10-23
结帖率:50%
收藏
已结贴  问题点数:10 回复次数:2 
为啥我输入1,4,1000输出999,而输入1,2,1000输出1000
#include<stdio.h>
void main()
{
float a,c,h,e,C;
int n;
printf("请输入a,e,n");
scanf("%f,%f,%d",&a,&e,&n);
h=(e-a)/n;
for(c=h,C=0;c<=n*h;c=c+h)
{C=C+1;}
printf("%f\n",C);
}
搜索更多相关主题的帖子: 输入 输出 int printf for 
2017-10-29 10:32
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:10 
    printf("c<=%f\n", n*h);
    for(c=h,C=0; c<=n*h; )
    {
        C=C+1;
        c=c+h;
        printf("C=%f c=%f, ", C,c);
    }
可能是浮点误差问题,这样看的结果:
请输入a,e,n1,4,1000
c<=3.000000
C=998.000000 c=2.997017, C=999.000000 c=3.000017,
请输入a,e,n1,2,1000
c<=1.000000
C=999.000000 c=0.999991, C=1000.000000 c=1.000991,

[此贴子已经被作者于2017-10-29 17:12编辑过]

2017-10-29 17:05
刘学海1
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-10-23
收藏
得分:0 
回复 2楼 吹水佬
谢谢兄弟,忘结贴了,非常抱歉啊
2017-11-10 19:30
快速回复:为啥我输入1,4,1000输出999,而输入1,2,1000输出1000
数据加载中...
 
   



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

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