首页 > 技术文章 > C++中打印比较大的数字,不想用科学表示法怎么办?

qscfyuk 2020-02-17 20:37 原文

在打印之前加上这么一句:

cout.setf(ios::fixed,ios::floatfield);

如果要指定保留两位小数,可以再加上这么一句:

cout.precision(2);

下面举个例子:

一个小伙子跟未来岳父商量彩礼的事。

未来岳父说:“这样,你第一天给我一分钱,第二天给我两分钱,每天比前一天多一倍,连续一个月,就能把我女儿娶回家了!”

小伙子心想:那能有多少钱,准岳父对我还挺好的嘛!二话不说就答应了。

我们用C++写个程序帮他算一下这个彩礼一共需要多少钱:(怀疑人生系列)

 

#include<iostream>
 
using namespace std;
 
int main()
{
    cout.setf(ios::fixed,ios::floatfield);
    cout.precision(2);
    double i = 0.01;
    double sum = 0;
    for(int x = 1; x < 31; x ++)
    {
        sum += i;
        i *= 2;
    }
    cout << "彩礼总共需要:" << sum << "元" << endl;
    return 0;  
}

一个月按30天算,得到的结果是酱紫的:

个,十,百,千,万,十万,百万,千万!我勒个去,一千万的彩礼你敢信!

推荐阅读