搜索
查看: 1873|回复: 3
打印 上一主题 下一主题

关于强制类型转换的问题。。

[复制链接]
楼主
发表于 2013-1-29 10:45:35 | 显示全部楼层
你的程序并没有错,错在不是你想要的结果。 ‘/’的优先级高于‘+’
如果把表达式(float)(a+b)/3+(int)c改为(float)(a+b)/(3+(int)c)如你所愿了,如下程序:
#include <stdio.h>
int main()
{
    int a,b;
    float c;
    a=3;
    b=2;
    c=2.5;
    printf("the total is %f\n",(float)(a+b)/(3+(int)c));
        sleep(5000);
        return 0;
}
这样输出的结果就是你想要的结果1.00000:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表