1. 程式人生 > >C++ 輸入輸出格式 與 精度問題

C++ 輸入輸出格式 與 精度問題

使用printf():

int myCost_1 = 10;
int myCost_2 = 234;
printf("%.3f\n", myCost_1 / 100.0);//商 保留三位小數
printf("%04d  %02d\n", myCost_2,myCost_2);//分別輸出4位和兩位

//輸出結果:0.100
//輸出結果: 0234 234    //數本身有3位,則會3位都輸出

使用cout:

#include<iomanip>//標頭檔案

float c = 3.234;
cout<<setiosflags(ios::fixed)<<setprecision(2)<<c<<"\n"
//輸出結果3.23

setiosflags(ios::fixed):設定浮點數以固定的小數位數顯示
setprecision(2):是設定浮點數的精度為2位。

二、取整函式:

#include<cmath>

ceil(x) 返回不小於x的最小整數值(然後轉換為double型)

floor(x) 返回不大於x的最大整數值

round(x) 返回x的四捨五入整數值

三、輸入格式化

int year,month,day;

//**讀取特定位數**:前四位賦值給year,後四位兩兩賦值給month和day
scanf("%4d%2d%2d"
, &year, &month, &day); //inout: 19951128 //year=1995, month=11, day=28