c語言關於010 2f和0 ,C語言關於 010 2f和0 10 2f

2021-03-10 22:03:50 字數 6203 閱讀 4318

1樓:金色潛鳥

printf("%0+10.2f\n",f); 輸出 +000123.46

格式bai裡10 表示輸出數總du佔位是10個字元.2 是小數2位。

zhi計入 四舍五dao入。

格式裡 + 號表示 輸出 負數帶專-號, 輸出 正數屬帶+號

格式裡 0 表示 用 0 填滿 左邊空格。

*****====

printf("%010.2f\n",f); 輸出 0000123.46

格式裡 0 表示 用 0 填滿 左邊空格。

格式裡10 表示輸出數總佔位是10個字元

.2 是小數2位。計入 四捨五入。

2樓:香夢沉酣

printf("%010.2f\n",f); 輸出 0000123.46

這個010.2是

復連續的,制相當於10.2,就是總共輸出10位,兩位小數。printf("%0+10.2f\n",f); 輸出 000+123.56

這個0+10.2估計你的意思是0+10.2也等於10.

2,然後結果會一樣是吧?但是0+10.2是在一個字串當中,並不會先去計算加法的,你看看你是不是進入這個誤區了還是其他問題。

3樓:

本人覺得輸bai

出應是:

printf("%010.2f\n",f); // 輸出du 0000123.46

printf("%0+10.2f\n",f);// 輸出 +000123.46

這樣才對,不然就zhi是編dao

譯器有bug。回後一行答小數點後輸出.56是毫無道理的。

4樓:匿名使用者

printf("%010.2f\n",f); 還能理解,printf("%0+10.2f\n",f);這個你是想幹嘛?

c語言中%010.2f是什麼意思

5樓:孫永超

含小數點共10個欄位,小數點後保留2位,其他位置用0補充。

6樓:

所得結bai

果是float型別並且du保留10位,其中兩位為小數點,位zhi

數不夠用0補齊dao!!

比如內輸入

main()

結果為0001234.00 共十位!!

7樓:匿名使用者

應該就是總共輸出十個數的位置(如果整數部分沒有超過10位),在十位數中在保留兩位小數

8樓:匿名使用者

f 表示輸出小數

10.2 表示數小數總位數只能有10位(含小數點和小數部分哦),其中小數部分只能有兩位

輸出的數值靠右對齊,前面的零表示,如果位數不逐10位,在數的前面補多個0以湊足10位極人臣

9樓:匿名使用者

格式化輸出

m.nm表示域寬,n表示精度。(比較詳細的去查下課本。記不清了)

所以上面意思就是說取數字共10位不足的左邊補0保留2位小數

10樓:匿名使用者

輸出佔10位,不知前補0,最後保留2為小數。

11樓:匿名使用者

取數字共10位不足的左邊補0保留2位小數

12樓:匿名使用者

共十位,保留兩位小數

c語言中%010.2f中10前面的0什麼意思

13樓:匿名使用者

表示當要輸出的小數不足10位的時候用0填充。例如:a=1.2;printf("%010.2f",a);

此時輸出結果為:00000001.20

14樓:天雨下凡

如果要顯示的資料不夠10位,則在前面加0

15樓:匿名使用者

表示數字佔10位,小數點後面佔兩位

c語言中%10.2f與%-10.2f的區別在哪

16樓:匿名使用者

都是至bai

少佔用10個字元位置,前邊du

的那個靠右對齊zhi,空格補

dao在數字左側;另一個靠回左對齊,

空格補在數字右側。答

前邊的那個如果多行輸出,最末一個數字的位置都是相同的,小數點也是對齊的,比如:

___12.34

__567.12

____1.00

後面的那個的多行輸出效果為:

12.34

567.12

1.00

17樓:匿名使用者

%10.2f是指是指輸出域為10 輸出資料保留兩位小數 %.2是指兩位小數輸出, %-10.2f指的是輸出域為10 兩位小數輸出,輸出資料在輸出中左顯示輸出

c語言程式,%2.1f這一型別的輸出數值有什麼特點?

18樓:匿名使用者

這個不是什麼特殊型別,實際上是float型別的格式化輸出。無非是在%f的中間加了一個控制輸出格式的2.1。

小數位保留1位。如:你要輸出3.1415,按這種格式輸出的結果就是3.1。

實際上你這種寫法不是很正確,因為%2.1f裡的2不起作用,一般寫成%02.1f 這樣,如果整數位小於2位,那麼前面就會用0來填充。

19樓:我想有創意

2是指輸出長度

,點1表示小數點後保留一位

如果字元本身很短,輸出長度比較大的話,效果就會很明顯了比如 %10.2f,如果按照這種格式輸出12.3456的話,會得到 12.35,(前面是5個空格)

如果是%010.2f則輸出0000012.35(把空格換成了0)如果是%a10.2f(a表示其它字元)則輸出a12.35(注意a不能是運算子)

ps:以上是我剛剛除錯的結果

20樓:白雲wo的愛

2是用於控制數值的寬度,.1用於控制小數點後的位數具體請看一下說明

printf,定義格式為:%[flags][width][.perc][f|n|h|l]type

規定資料輸出方式,具體如下:

1.type 含義如下:

d 有符號10進位制整數

i 有符號10進位制整數

o 無符號8進位制整數

u 無符號10進位制整數

x 無符號的16進位制數字,並以小寫abcdef表示x 無符號的16進位制數字,並以大寫abcdef表示f 浮點數

e/e 用科學表示格式的浮點數

g 使用%f和%e表示中的總的位數表示最短的來表示浮點數 g 同g格式,但表示為指數

c 單個字元

s 字串

s wchar_t字元(寬字元)型別字串% 顯示百分號本身

p 顯示一個指標,near指標表示為:***xfar 指標表示為:***x:yyyy

n 相連參量應是一個指標,其中存放已寫字元的個數2.flags 規定輸出格式,取值和含義如下:

無 右對齊,左邊填充0和空格

- 左對齊,右邊填充空格

+ 在數字前增加符號 + 或 -

0 將輸出的前面補上0,直到佔滿指定列寬為止(不可以搭配使用-)空格 輸出值為正時冠以空格,為負時冠以負號# 當type=c,s,d,i,u時沒有影響type=o,x,x時,分別在數值前增加'0',"0x","0x"

type=e,e,f時,總是使用小數點

type=g,g時,除了數值為0外總是顯示小數點3.width 用於控制顯示數值的寬度,取值和含義如下n(n=1,2,3...) 寬度至少為n位,不夠以空格填充0n(n=1,2,3...

) 寬度至少為n位,不夠左邊以0填充* 格式列表中,下一個引數還是width

4.prec 用於控制小數點後面的位數,取值和含義如下:

無 按預設精度顯示

0 當type=d,i,o,u,x時,沒有影響type=e,e,f時,不顯示小數點

n(n=1,2,3...) 當type=e,e,f時表示的最大小數位數

type=其他,表示顯示的最大寬度

.* 格式列表中,下一個引數還是width5.f|n|h|l 表示指標是否是遠指標或整數是否是長整數f 遠指標

n 近指標

h 短整數或單精度浮點數

l 長整數或雙精度浮點數

21樓:匿名使用者

這是按照浮點型格式輸出,一共輸出的數佔兩格,小數佔一格

c語言中%2f和%.2f有什麼區別?謝謝大神

22樓:愛佳佳的恐龍

%2f是把float的所

bai有位數輸出2位,包括

du小數點,如果

不組zhi2位,補0,如果超過dao2位,按照實際回輸出

%.2f是float後的小數答只輸出兩位。

例如:printf("%2f, %2f, %.2f",123.1, 123.123, 123.123);

vs的輸出就是:123.100000, 123.123000,123.12

拓展資料:

特有特點

c語言是一個有結構化程式設計、具有變數作用域(variable scope)以及遞迴功能的過程式語言。

c語言傳遞引數均是以值傳遞(pass by value),另外也可以傳遞指標(a pointer passed by value)。

不同的變數型別可以用結構體(struct)組合在一起。

只有32個保留字(reserved keywords),使變數、函式命名有更多彈性。

部份的變數型別可以轉換,例如整型和字元型變數。

通過指標(pointer),c語言可以容易的對儲存器進行低階控制。

預編譯處理(preprocessor)讓c語言的編譯更具有彈性。

23樓:匿名使用者

%mf,   %.nf,  %m.nf,

其中復m表示輸出資料的制

寬度;n表示輸出的實數保留n位小數;

舉個例子

float x=123.2323232323;

printf("%12f,%3.2f,%.2f",x,x,x);

輸出的結果

到第一個逗號前,下面的橫杆共有12個,其中逗號也算一個距離,但是當m小於實際的長度時,就不用管m了,如第二個,距離是從左往右算的,不夠的補空格。

24樓:匿名使用者

兩者的區分如下:

%2f是指資料總共佔兩列,而%.2f是小數位數佔兩列;

%.2f是保留小數點後兩位精度。%2f表示保留兩位精度(包括小數點,前後)例如:

25樓:禾鳥

%2f是把float的所有位數輸出

復2位,包括小

制數點,如bai果不組2位,補

du0,如果超過2位,按照實際zhi輸出dao%.2f是float後的小數只輸出兩位。例如:

printf("%2f, %2f, %.2f",123.1, 123.

123, 123.123); vs的輸出就是:123.

100000, 123.123000,123.12

26樓:薄荷檸檬加醋不

%2f輸出域寬為2

%.2f小數點後保留兩位

27樓:正常人1號

%2f是把float的所有位數輸出2位,包括小數點,如果不組2位,補0,如果超過2位,按照實際輸出

%.2f是float後的小數只輸出兩位。

28樓:百年孤寂成傷

2f是指資料總共佔兩列,.2f是小數位數佔兩列。

29樓:諾比獅子醬

在c語言的輸出中,%m.nf意義:1、f表示輸出的資料是浮點數;2、n表示輸出的資料保留小數點專後n為小數,第n+1位四捨五入,屬若不足n位則補0;3、m表示輸出資料在終端裝置上佔有m個字元,並右對齊,如果實際的位數小於m時,左邊用空格補足,如果實際位數大於7時,向右擴充套件輸出。

比如:printf("%4f\n",123.4);

printf("%2f\n",123.4);

printf("%.4f\n",123.4);

輸出結果為:

123.4

123.4

123.4000

30樓:我的小名叫翔翔

%2f應該是設定寬度吧,%。2f應該是說小數點,設定精度

c語言問題f和lf的區別,C語言問題 f和 lf的區別

由於精度的原因,輸出 lf和 f的資料不同,可能會造成錯誤。主要有一下四點專區別 1 代表的資料型別不同屬 f代表單精度浮點型資料 float lf代表雙精度浮點型資料 double 2 有效數字位數不同 單精度浮點數有效數字保證6位,部分7位,雙精度浮點數有效數字保證15位,部分16位。3 所能表...

C語言關於fgets函式,C語言關於fgets函式

可能會溢位。記憶體中給ch分配一個位元組的空間,而你這裡是讀取n 1個位元組,只要n 0就會出現溢位。當然有可能復溢位,一般來制說不會宣告一個字元變數,然後把讀取的一段資料往一個字元變數所在的地址放 那字元變數後面的記憶體不是都被蓋了?正確的用法是malloc一段大小的記憶體,一次讀取的大小不超過這...

關於c語言問題關於c語言的問題

void vtaskstartscheduler void privileged function 是函式定義,函式名 vtaskstartscheduler,void 表示該函式是無參函式,前面的 void 表示這個函式無返回值。privileged function 是巨集,預編譯期間,執行文字...