[英]C programming - Output result in decimals
在媽媽那里,我正在學習C語言和語言的基礎知識,但是我的代碼有問題。 當我將兩個數字相乘時,即使我浮動輸入的數字,我也無法獲得小數。
我的代碼:
int main()
{
double result_met, km;
result_met = km = 0.0f;
/*Display text*/
printf("Enter values of the distance between the two cities in km's\n");
scanf_s("%d", &km);
/*Formular for a simple km conversion*/
result_met = km * 1000.0f;
/*Result print*/
printf("Meter:%d", result_met);
printf("\nWaiting for a character to be pressed from the keyboard to exit.\n");
getch();
return 0;
}
格式說明符不正確-應該是%lf
%d
是int
。
scanf_s("%lf", &km);
/*Formular for a simple km conversion*/
result_met = km * 1000.0f;
/*Result print*/
printf("Meter:%lf", result_met);
double的格式說明符為%lf
,而不是%d
您也可以使用float
而不是double
,這樣可以節省內存(這在開始編寫大程序時很重要),然后必須使用格式說明符%f
( %lf
的“ l”表示“ long”,因為double
表示long float
)
當治療小數,要在屏幕上只打印了幾小數(避免的“2.50000001”印刷),那么你可以使用格式說明符%.3f
如果你想3,只有3位數字印刷( 3
可任何整數)。
例如,以下代碼:
printf("%.2f\n",3.1415);
具有以下輸出:
3.14
printf
函數具有許多不同的格式說明符,這可能非常有用。 如果要了解更多信息,請參閱cpluplus.com參考。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.