qq_56975267 2021-11-24 17:17 采纳率: 94.7%
浏览 35
已结题

为什么最后会变成整数

调试的时候这里不是小数吗

img


最后输出的时候为什么变成了整数

img


后面也没有其他的代码了

  • 写回答

1条回答 默认 最新

  • bostonAlen 2021-11-24 17:27
    关注

    cout跟printf是不同的,cout输出float或double,是会将小数点后非有效数字的0去掉的,而printf里面以%f输出规定是以6位小数输出,不管是不是有效数字

    #include <iostream>
    
    #include <iomanip>
    
    using namespace std;
    
    void main()
    
    {
        double PT = 673.14159267;
    
        //保留4位小数,四舍五入哦
        cout << fixed << setprecision(4) << PT <<endl<< 23.45678 <<endl;
        //保留2位有效位
        cout << setprecision(2) << PT <<endl<<9.234<<endl;
    
        getchar();
    
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月10日
  • 已采纳回答 12月2日
  • 创建了问题 11月24日