源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

解析C++ 浮点数的格式化输出

  • 时间:2022-08-26 17:56 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:解析C++ 浮点数的格式化输出
[b]C++格式化输出浮点数 [/b]
[u]复制代码[/u] 代码如下:
#include <iostream> using std::cout; using std::endl; using std::fixed; using std::scientific; int main() {    double x = 0.001234567;    double y = 1.946e9;    cout << "Displayed in default format:" << endl << x << '/t' << y << endl;    cout << "/nDisplayed in scientific format:" << endl << scientific << x << '/t' << y << endl;    cout << "/nDisplayed in fixed format:" << endl << fixed << x << '/t' << y << endl;    return 0; }
Displayed in default format: 0.00123457      1.946e+009 Displayed in scientific format: 1.234567e-003   1.946000e+009 Displayed in fixed format: 0.001235        1946000000.000000
[u]复制代码[/u] 代码如下:
#include <iostream.h> main(void) {   float a=100100.0, b=0.08;   cout.setf(ios::right|ios::scientific|ios::showpoint);   cout.width(20);     cout <<(-a*b);   return 0; }
-8.008000e+003
[u]复制代码[/u] 代码如下:
#include <iostream> #include <iomanip> #include <limits> using std::cout; using std::endl; using std::setprecision; using std::numeric_limits; int main() {   const double pi = 3.14;   cout << endl;   for(double radius = .2 ; radius <= 3.0 ; radius += .2)     cout << "radius = "     << setprecision(numeric_limits<double>::digits10 + 1)     << std::scientific << radius<< "  area = "          << std::setw(10) << setprecision(6)<< std::fixed << pi * radius * radi us << endl;   return 0; }
radius = 2.0000000000000001e-001  area =   0.125600 radius = 4.0000000000000002e-001  area =   0.502400 radius = 6.0000000000000009e-001  area =   1.130400 radius = 8.0000000000000004e-001  area =   2.009600 radius = 1.0000000000000000e+000  area =   3.140000 radius = 1.2000000000000000e+000  area =   4.521600 radius = 1.3999999999999999e+000  area =   6.154400 radius = 1.5999999999999999e+000  area =   8.038400 radius = 1.7999999999999998e+000  area =  10.173600 radius = 1.9999999999999998e+000  area =  12.560000 radius = 2.1999999999999997e+000  area =  15.197600 radius = 2.3999999999999999e+000  area =  18.086400 radius = 2.6000000000000001e+000  area =  21.226400 radius = 2.8000000000000003e+000  area =  24.617600
[u]复制代码[/u] 代码如下:
#include <iostream> #include <iomanip> #include <string> using namespace std; int main( ) {    ios_base::fmtflags flags = cout.flags( );    double pi = 3.14285714;    cout << "pi = " << setprecision(5) << pi << '/n';    cout.flags(flags); }
pi = 3.1429
[u]复制代码[/u] 代码如下:
#include <iostream> #include <iomanip> #include <math.h> using namespace std; int main() {    double root2 = sqrt( 2.0 );    int places;    cout << setiosflags( ios::fixed)         << "Square root of 2 with precisions 0-9./n"         << "Precision set by the "         << "precision member function:" << endl;    for ( places = 0; places <= 9; places++ ) {       cout.precision( places );       cout << root2 << '/n';    }    cout << "/nPrecision set by the "         << "setprecision manipulator:/n";    for ( places = 0; places <= 9; places++ )       cout << setprecision( places ) << root2 << '/n';    return 0; }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部