小数点输出精度控制问题 .xml

时间:2022-06-03 18:29:03

setf()是追加标志字的函数,而flags()是设置标志字
 
fixed标志是以定点形式显示浮点数
 
 

当有fixed标志时,说明数据按一定的位数输出,否则去掉fixed标志后,数据按原位输出---即小数最后面的0不显示

因此,使用时有两种情况:

(1)原位输出,这时应去掉fixed标志: cout。unsetf(ios::fixed)

 
     如0.1 便会输出0.1
 

(2)设置小数点后的输出位数

 
        分两步:
                      第一步---------   设置定位输出 cout。setf(ios::fixed)
 
                      第二步---------   设置输出精度 cout.precision(4)
 
 

如下面程序:

 
 

 

    #include <iostream.h>  
    #include <iomanip.h>  
    void main(void)  
    {  
    cout.setf(ios::fixed);  
    cout<<setprecision(2)<<(float)0.1<<endl;//输出0.10  
    cout.unsetf(ios::fixed);  
    cout<<setprecision(2)<<(float)0.1<<endl; //输出0.1  
    }  
 
 
 

    fout<<rs<<'/t'<<'/t'<<dr_mean<<"(";  
      
    fout.setf(ios::fixed);  
      
     fout<<dr_sd<<")"<<endl;  
      
    fout.unsetf(ios::fixed);  
      
     fout<<'/t'<<'/t'<<mature_mean<<"(";  
      
    fout.setf(ios::fixed);  
    fout.precision(4);  
                  
    fout<<mature_sd<<")"<<endl;  
      
    fout.unsetf(ios::fixed);  
      
     fout<<'/t'<<'/t'<<cost_mean<<"(";  
      
      
    fout.setf(ios::fixed);  
    fout.precision(6);  
      
      
     fout<<cost_sd<<")"<<endl;  
      
     fout.unsetf(ios::fixed);  
 

输出结果如下:

0.998836---原位 (0.000000)---六位

2746.2---原位

(99.7445)--四位

3.152--原位

(0.015522)--六位



本文使用 书画小说软件 发布,内容与软件无关,书画小说软件 更惬意的读、更舒心的写、更轻松的发布。

   >  >  >