論壇中已經討論過類似的話題。但我在下面的代碼一些不同的問題:在C++中顯示小數點後的兩位數
double total;
cin>>total
cout<<fixed<<setprecision(2)<<total;
如果我給輸入爲100.00,然後程序打印僅有100而不是100.00
我如何打印100.00
論壇中已經討論過類似的話題。但我在下面的代碼一些不同的問題:在C++中顯示小數點後的兩位數
double total;
cin>>total
cout<<fixed<<setprecision(2)<<total;
如果我給輸入爲100.00,然後程序打印僅有100而不是100.00
我如何打印100.00
這可能與setiosflags(ios :: showpoint)。
'showpoint'在這裏不應該是必須的,因爲他已經請求了2個小數點後的數字。他的代碼是正確的,並應該給他說他想要的輸出。 – 2013-04-29 14:19:22
cout << fixed << setprecision(2) << total;
setprecision
指定最小精度。所以
cout << setprecision (2) << 1.2;
將打印1.2
fixed
說,會有的小數位數的固定數量在小數點後
cout << setprecision (2) << fixed << 1.2;
將打印1.20
最簡單的方式做這是使用cstdio的printf。其實,我很驚訝,有人提到printf!無論如何,你需要包括圖書館,像這樣......
#include<cstdio>
int main() {
double total;
cin>>total;
printf("%.2f\n", total);
}
這將打印的價值「總」 (這就是%
,然後,total
一樣) 2浮動點(那是什麼.2f
確實)。而\n
底,是線剛剛結束,這可與弗吉尼亞的法官在線編譯器選項,那就是:
g++ -lm -lcrypt -O2 -pipe -DONLINE_JUDGE filename.cpp
您嘗試運行不會與此編譯器選項運行代碼.. 。
這可能是有用的閱讀http://stackoverflow.com/問題/ 2872543/printf-vs -cout-in-c: printf仍然可以在C++中使用,但是在特殊情況下。 – Antonio 2014-08-11 12:17:18
大聲笑,如何UVa判斷,-lcrypt或任何其他編譯器選項,甚至遠程相關的問題? – 2016-10-14 02:51:57
uhh,3年前我自己回答XD,當時,當我發現這個問題時,我開始使用競爭性編程,所以我認爲我的答案中的這個「額外信息」可以幫助那些開始競爭的人編程以及:) – Bengalaa 2016-10-14 20:05:18
,能夠在C打印15十進制數++使用以下:
#include <iomanip>
#include <iostream>
cout << fixed << setprecision(15) << " The Real_Pi is: " << real_pi << endl;
cout << fixed << setprecision(15) << " My Result_Pi is: " << my_pi << endl;
cout << fixed << setprecision(15) << " Processing error is: " << Error_of_Computing << endl;
cout << fixed << setprecision(15) << " Processing time is: " << End_Time-Start_Time << endl;
_getch();
return 0;
_「include ... include」_什麼? – MickyD 2015-03-21 00:38:54
使用頭文件stdio.h
可以很容易地做到這一點照常如c。在使用%.2lf(在%說明符後面設置特定數字)之前,使用printf()。
它只是在小數點後printf特定數字。
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
double total=100;
printf("%.2lf",total);//this prints 100.00 like as C
}
真的嗎?它在我的系統上給出了100.00(好吧,它給出了一個錯誤的分號,但我修正後,它可以像我期望的那樣工作)。也許你應該發佈你一直在測試的ACTUAL代碼。 – 2013-04-29 13:39:08
你是否要求修復你的代碼?或者你是否想要以任何方式打印帶有兩位小數的數字? 你應該發佈你用來運行你的代碼的編譯器選項(或者至少是編譯器),這將是非常有用的發現問題;) – Bengalaa 2013-12-27 15:30:41