亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

%f為什么要和%c一起連用,中間沒逗號

#include <stdio.h>

int main()

{

? ? int age = 18;

float height = 1.85;

char unit = 'm';

printf("小明今年%d歲\n", age);

printf("小明身高%f%c\n", height, unit);

printf("小明現在在慕課網上學習IT技術");?

return 0;

}


正在回答

4 回答

有逗號的話會變成“小明身高1.85,m”。

%f %c %d 等,都是輸出的格式,float height=1.85,用%f的格式輸出就是1.85,用%d的格式輸出就變成了1。

你可以試試 :

int num=97;

printf("%c",num);

結果應該是'a'。


或者試試:

char letter='b';

printf("%d",letter);

結果為98。


也就是說不管是char還是int ,其在內存中的儲存形式是一樣的。當你要把它們顯示出來的時候就要給它們定一種格式,讓它們以你指定的格式顯示出來。

或許你想問height已經定好了是float的格式,為什么在輸出的時候還要再重申一次它是%f呢?

我記得制訂c標準的委員會那幫人對于c語言的精神有幾條指導原則,第一條就是“相信程序員”。

或許他們認為你會需要把float 類型的數據以int的形式顯示,而不是你的一時疏忽把%f打成了%d。

0 回復 有任何疑惑可以回復我~
#1

外太空 提問者

非常感謝!
2016-06-26 回復 有任何疑惑可以回復我~

因為height輸出的是一個浮點數,unit輸出的是一個字符。

1 回復 有任何疑惑可以回復我~

%f代指1.85這類小數%c代指"m”字符身高是由小數和字符兩部分組成為一個整體不能用,斷開

1 回復 有任何疑惑可以回復我~

因為%f%c分別指的是后面的height和unit,至于為什么沒有逗號,是因為%f%c是取值符號,例如如果height為168,unit為cm,輸出的結果就是168cm,如果加了逗號就變為168,cm肯定不對吧,記住以后不用加就是了

2 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

%f為什么要和%c一起連用,中間沒逗號

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號