1. 程式人生 > >☆ C++ 浮點型資料使用 "cout" 輸出

☆ C++ 浮點型資料使用 "cout" 輸出

最近在使用printf()輸出浮點數的時候,突然想到可不可以使用cout輸出呢?

於是果斷的去嘗試了一下:

bang~ 後面的0都不見了?

你像printf()可以直接控制" .n%f " 來決定小數點後的位數,但是cout呢??

當然有辦法解決這個問題:

****************************************************************************************************************************************

 

★直接附上程式碼:

#include <iostream>
#include <windows.h>
#include <iomanip>    //input&output manipulator(操縱器)
using namespace std;

int main()
{
	system("title 輸出浮點數測試"); 
	float a = 1500.010;    //這裡不能是int
	cout << setprecision(2) << a <<endl;    //保留兩位有效數字 
    cout << setprecision(8) << a <<endl;
	cout << setiosflags(ios::fixed) << setprecision(2) << a <<endl;    //小數點後保留兩位 
	return 0;
} 

//set_precision 設定精度

解析:

setprecision(n):設定精度(單獨存在時,表示資料的有效數字為n)

setiosflags(ios::fixed):設定輸入輸出標準標記 -> 主要是將輸出流的格式設定為括號內的格式:fixed(將一個浮點數表示為一個定點整數和小數點和小數部分的格式),配合setprecision(n)在同一個cout語句中使用,setprecision(n)的效果表示小數點後保留的位數(0也會顯示)

執行結果:

 

 

 

 

****************************************************************************************************************************************

 

             最快的腳步不是跨越,而是繼續,最慢的步伐不是小步,而是徘徊。
 

****************************************************************************************************************************************