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

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

%lf 和%f 為什么在printf函數輸出后都是六位小數

double 和float 對應的%lf和%f 為什么在printf函數輸出后都是六位小數,double不是精度更高嗎,不是應該有更多小數嗎,如果不是的話為什么不直接用%f 而要用%lf.輸出結果上沒有什么區別。

#include?<stdio.h>
int?main()
{
????char?c?=?'a';
????int?n?=?c;????????//將c賦值給n
????float?f?=?c;??????//將c賦值給f
????double?d?=?c;????//將c賦值給d
????printf("%d\n",n);
????printf("%f\n",f);
????printf("%lf\n",d);
????return?0;????
}


正在回答

3 回答

我也一直有這個疑問,如果%f和%lf輸出沒區別,那為什么還要有%lf呢,直接用%f就行了。double不是也可以用%f輸出嗎,搞不懂,哪個大神來解釋一下

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

唉,沒人來嗎

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

你理解錯了1.2f表示兩位小數好像是,你百度下就清楚了

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

慕無忌1515682 提問者

那是一個L...不是1.2f
2015-04-25 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

%lf 和%f 為什么在printf函數輸出后都是六位小數

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

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

幫助反饋 APP下載

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

公眾號

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