本文目錄一覽:
c語言中printf(“%5.2f”)中的「5.2」是什麼意思?
c語言中printf(“%5.2f”)中的「5.2」是指輸出結果總長為五位數。
小數點前面的數字表示輸出列數數字位數大於它時,按實際位數輸出,小數點前空缺也是小數點後面的數字表示輸出的小數點位數,如果位數不足就會四捨五入。如果位數不夠顯示就會在後面補0.
比如x=15.21853,則printf(“%5.2f”,x)就是「15.22」,注意小數點也算一位數長。又如x=5.21843則printf(“%5.2f”,x)就是「 5.22」,注意5前面還有一個空格。
故而上面問的5.2是指結果總長是五位數(注意小數點也算一位數長),就是小數點前兩個數字,不足就用空格表示,小數點後保留兩位,不足四捨五入。
其中printf(“%-5.2f”,x)指的是在右邊補空位。比如x=5.21843,在2中5前面有一個空格,而在4中是5後面有一個空格(即小數點前面有一個空格)。
c語言5.2f是什麼意思?
5.2是指結果總長是五位數(注意小數點也算一位數長),就是小數點前兩個數字,不足就用空格表示,小數點後保留兩位,不足四捨五入。
小數點前面的數字表示輸出列數,數字位數大於它時,按實際位數輸出,小數點前空缺也是。
小數點後面的數字表示輸出的小數點位數,如果位數不足就會四捨五入,如果位數不夠顯示就會在後面補0。
比如x=12.31913,則printf(“%5.2f”,x)就是「12.32」,注意小數點也算一位數長。
又如x=2.31913,則printf(“%5.2f”,x)就是「
2.32」,注意小數點也算一位數長,2前面還有一個空格。
C語言的運算符主要用於構成表達式
同一個符號在不同的表達式中,其作用並不一致。下面按計算的優先順序,分別說明不同作用的表達式。需要特別指出,在C語言標準中,並沒有結合性的說法。
相同優先級運算符,從左至右依次運算。注意後綴運算優先級高於前綴。因此++i++應解釋為++(i++)。
而與或非的運算優先級都不一樣,因此a b || b c解釋為(a b) || (b c)
合理使用優先級可以極大簡化表達式。
以上內容參考:百度百科-C語言運算符
c語言中%5.2f是什麼意思
小數點前面的數字表示輸出列數,數字位數大於它時,按實際位數輸出,小數點前空缺也是。
小數點後面的數字表示輸出的小數點位數,如果位數不足就會四捨五入,如果位數不夠顯示就會在後面補0。
比如x=12.31913,則printf(“%5.2f”,x)就是「12.32」,注意小數點也算一位數長!
又如x=2.31913,則printf(“%5.2f”,x)就是「 2.32」,注意小數點也算一位數長,2前面還有一個空格!
所以你上面問的5.2是指結果總長是五位數(注意小數點也算一位數長),就是小數點前兩個數字,不足就用空格表示,小數點後保留兩位,不足四捨五入!
小數點也算在寬度之中。.2是保留兩位小數,5是指寬度為5。
輸出5位數,期中兩位是小數,如果一個數大於5位如100000,將輸出100000.00也就是說一但數值超過限定值將不再限制整數位。
且c語言中%d是表示整型數據(即整數) %f表示的是浮點型數據(即小數) 而%5.2f是表示五位有效數字且小數點後有兩位數字的浮點型數據。
類似於a+=a++;或者(i++)+(i++)+(i++)屬於未定義行為,並不是說c語言中還未定義這種行為,它早有定論,它的結果取決於編譯器實現,不要寫這樣的代碼!
擴展資料
比較特別的是,比特右移()運算符可以是算術(左端補最高有效位)或是邏輯(左端補 0)位移。例如,將 11100011 右移 3 比特,算術右移後成為 11111100,邏輯右移則為 00011100。因算術比特右移較適於處理帶負號整數,所以幾乎所有的編譯器都是算術比特右移。
運算符的優先級從高到低大致是:單目運算符、算術運算符、關係運算符、邏輯運算符、條件運算符、賦值運算符(=)和逗號運算符。
參考資料來源:百度百科-c語言的運算符號
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/292857.html