VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 612|回复: 1

[讨论] 进行小数计算时别死在这里!

[复制链接]
16_avatar_middle
在线会员 发表于 2016-2-19 11:42:33 | 显示全部楼层 |阅读模式
#include <stdio.h>
int main(void)
{
        int i = 10,j = 3;
        printf("结果为:\n");
        printf("%f",i/j);
        getchar();
        return 0;
}                   //当我们这样写代码时会发现输出的结果为:0.000000





错误出在哪里呢?

我们这样写就可以了:

#include <stdio.h>
int main(void)
{
        float i = 10.0,j = 3.0;
        printf("结果为:\n");
        printf("%f",i/j);
        getchar();
        return 0;
}

或者直接:

#include <stdio.h>
int main(void)
{
        printf("结果为:\n");
        printf("%f",10.0/3.0);
        getchar();
        return 0;
}

但是绝对不可以这样:
#include <stdio.h>
int main(void)
{
        printf("结果为:\n");
        printf("%d",10.0/3.0);
        getchar();
        return 0;
}          //这样结果为:-1431655765   很明显的错误,溢出了。

评分

参与人数 1驿站币 +2 热心值 +2 收起 理由
81_avatar_small Debug + 2 + 2 很给力!

查看全部评分





上一篇:如何解决数字运算中的溢出问题
下一篇:输出格式化字串一定要注意的问题!
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-27 16:28

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表