1樓:金色潛鳥
cout 預設輸出格式相當於 c 裡 %g 格式 -- 簡略格式,例如 123.00000 輸出為 123
123.450000 輸出為123.45
用 cout << fixed << 預設輸出格式相當於 c 裡 %f 和 %lf 格式
如果想指定 輸出小數字數,則要 加 標頭檔案 #include , 呼叫 setprecision(多少位)。
*****==
例子:#include
#include
using namespace std;
main()
例子輸出:
123123.000000
123.00
2樓:匿名使用者
// setprecision example#include
#include
using namespace std;
int main ()
cout<你自己敲這個程式試一下。
3樓:糾結de豌豆尖
float p;
p = (item1 + item2 + item3 + item4 + item5 + item6 + item7 +item8 + item9 + item10)/(count*1.0f);
double p0 = p/1.0f;
cout<<"這組資料的平均數是"<
如果你的item是int行的話 你得轉換其中乙個為float
c++如何用cout控制浮點數輸出的位數?
4樓:倒霉熊
▲setw(n)用法: 通俗地講就是預設寬度
如 cout<
#include //要用到格式控制符
void main()
執行結果為:
3.1428633
3.13.14
3.143
3.14285714
3.14285714e+00
該程式在32位機器上執行通過。
在用浮點表示的輸出中,setprecision(n)表示有效位數。
第1行輸出數值之前沒有設定有效位數,所以用流的有效位數預設設定值6:第2個輸出設定了有效位數0,c++最小的有效位數為1,所以作為有效位數設定為1來看待:第3~6行輸出按設定的有效位數輸出。
在用定點表示的輸出中,setprecision(n)表示小數字數。
第7行輸出是與setiosflags(ios::fixed)合用。所以setprecision(8)設定的是小數點後面的位數,而非全部數字個數。
在用指數形式輸出時,setprecision(n)表示小數字數。
第8行輸出用setiosflags(ios::scientific)來表示指數表示的輸出形式。其有效位數沿用上次的設定值8
setw(n)是設定域寬。
就是你的輸出要佔多少個字元
比如:cout< 就輸出12345 cout< 輸出12345 而如果你要輸出的字元寬度超出了setw(n)的n值,就按輸出字元的寬度輸出。 如你的cout< 就輸出12.3456 5樓:蘸墨點水 比如說你想輸出2位小數,就用以下辦法(假如存入浮點型的是1.123456789) #include #include using namespace std; int main() 輸出的是: 1.12 (注:「fixed< 保留2位是四捨五入的結果,若想保留6位,就將「cout< 輸出結果是1.123457) c++語言 c++如何用cout控制浮點數輸出的位數? 6樓:倒霉熊 ▲setw(n)用法: 通俗地講就是預設寬度 如 cout< #include //要用到格式控制符 void main() 執行結果為: 3.1428633 3.13.14 3.143 3.14285714 3.14285714e+00 該程式在32位機器上執行通過。 在用浮點表示的輸出中,setprecision(n)表示有效位數。 第1行輸出數值之前沒有設定有效位數,所以用流的有效位數預設設定值6:第2個輸出設定了有效位數0,c++最小的有效位數為1,所以作為有效位數設定為1來看待:第3~6行輸出按設定的有效位數輸出。 在用定點表示的輸出中,setprecision(n)表示小數字數。 第7行輸出是與setiosflags(ios::fixed)合用。所以setprecision(8)設定的是小數點後面的位數,而非全部數字個數。 在用指數形式輸出時,setprecision(n)表示小數字數。 第8行輸出用setiosflags(ios::scientific)來表示指數表示的輸出形式。其有效位數沿用上次的設定值8 setw(n)是設定域寬。 就是你的輸出要佔多少個字元 比如:cout< 就輸出12345 cout< 輸出12345 而如果你要輸出的字元寬度超出了setw(n)的n值,就按輸出字元的寬度輸出。 如你的cout< 就輸出12.3456 7樓:匿名使用者 你可以在標頭檔案裡 #include。函式裡面加上cout< 8樓:匿名使用者 cout< fixed 是操作符setiosflags 的引數之一,該引數指定的動作是以帶小數點的形式表示浮點數,並且在允許的精度範圍內盡可能的把數字移向小數點右側;iso::right 也是setiosflags 的引數,該引數的指定作用是在指定區域內右對齊輸出;setprecision 也是包含在命名空間iomanip 中的c++ 操作符,該操作符的作用是設定浮點數;setprecision(2) 的意思就是小數點輸出的精度,即是小數點右面的數字的個數為2。cout< fixed)< 使用setprecision(n)可控制輸出流顯示浮點數的數字個數。c++預設的流輸出數值有效位是6。 如果setprecision(n)與setiosflags(ios::fixed)合用,可以控制小數點右邊的數字個數。setiosflags(ios:: fixed)是用定點方式表示實數 c++輸出保留3位小數的浮點數 9樓:匿名使用者 #include using namespace std; void main() { float a,b; int c; cin>>a; //a=12.34521 b=a; //b=12.34521 b*=1000; //b=12345.21b+=0.5; //b=12345.71 c=b; //c=12345 b=c; //b=12345 b/=1000; //b=12.345 cout< 10樓:匿名使用者 #include #include using namespace std; int main() float x=12.34521; cin>>x;cout }這才是正確的答案 11樓:匿名使用者 #include #include //要加這個標頭檔案,作用主要是控制輸入輸出格式using namespace std; void main() 12樓: #include int main(void) 13樓:匿名使用者 #include int main () 14樓:鼎晟科技 float f= 0.35687; printf("%.3f",f); float f; scanf("%f",&f); printf("%.3f",f); #include #include using namespace std; void main() 15樓:甕秀雅 有多個做法,我一般用: cout.setf(ios::fixed); //定點輸出 cout.precision(3); //設定3位小數 16樓:璀璨星空 float f= 0.35687; printf("%.3f",f); c++ 如何實現浮點數的四捨五入? 17樓: 首先要明白浮點數在計算機中都絕大多數是近似值。其實c++對浮點數是自動四捨五入的,而且是非常嚴格地下一位為5則入,小於5則不入。這在double型時一般是沒有問題的。 在float型時,因精度低,記憶體中的近似值可能剛好使決定四捨五入的那一位的5不足額,造成不能四捨五入。例如float x=3.1415;,實際上記憶體中的二進位制換算過來是3. 14149999999999...;,這樣取3位小數後就成了3.141而不是3. 142了;如果換成double型,立馬就變成3.142了。可以這樣解決就保險了: float型的有效位是6位左右,給要輸出的變數加乙個1e-6,四捨五入的問題就解決了。如: int main(void) 輸出是3.142。 int main(void) 這個輸出是3.141。 而int main(void) 的輸出就是3.142了 18樓:匿名使用者 double dround(double x,int bit)//double round {double y=1; for(int i=0;i 19樓:幻形術 double fun(double num, int n)num = (num + 0.5) %1; for(int i = 0; i < n; ++ i )return num;} 20樓:w別y雲j間 /*編寫乙個函式double myround(double x),輸入乙個小數,將它四捨五入。 *例如:myround(-3.51)的值是-4.0,myround(4.49)的值是4.0。可以呼叫math.h中的 *庫函式ceil和floor實現這個函式。*/#include #include double myround(double x); int main() double myround(double x)else} c++ 中的資料怎樣以浮點小數(而不是定點小數)輸出,而不用科學計數法? 21樓:匿名使用者 //你的要求很特別,不管怎麼說,這個基本達到你的要求了#include #include #include #include using namespace std; void myprint(double d)elsecout< }void main (void)/*我勒個去,我覺得你特殊要求的地方就是那個6後面的0,為什麼非要去掉?c和c++提供的對齊函式挺好的嘛,使你的資料顯示的時候很整齊,要不然顯的很雜亂。想要達到一定的目的,常常是要做出相應的代價的。 另外,就是在資料位數很多的時候如,0.00000123456789,即使是科學計數法也會預設的取6位有效數字,要想顯示全部位數,要麼setprecision(n),這樣有些資料後面有你不想要的0:(;要麼採用二樓策略。*/ 程式猿3號 c語言有以下幾種取整方法 1 直接賦值給整數變數。如 int i 2.5 或 i int 2.5 這種方法採用的是捨去小數部分,能用於你的問題。2 c c 中的整數除法運算子 本身就有取整功能 int int 而下面介紹的取整函式返回值是double。整數除法對正數的取整是捨去小數部分,... 先存成字串,判斷有沒有小數點,再從字串格式化成整型或浮點型。include include include char strchr const char str,int ch int main int argc,char argv else system pause return 0 scanf s... float d 0.5 這叫宣告和初始化。願意寫 float d 0.5f 也可以。常數 0.5 預設 處理成 double 型。0.5f 規定 它 是 float 型.其實這不是什麼大問題。相對c語言中別的問題,這個可以完全忽略。float d 這叫宣告。d 0.5 這叫賦值語句。如果你前面有過 ...c語言如何把整型轉換成浮點數,C語言如何把整型轉換成浮點數?
c語言中怎樣判斷輸入的是整數還是浮點數
C語言中給浮點數賦值問題c語言中將乙個浮點型賦值給整型時,會不會四捨五入?