簡體   English   中英

C編程-以小數形式輸出結果

[英]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 %dint

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM