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

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

為什么我輸出的結果是99;99.000000;99.000000?

編碼在旁邊,求好心人~

正在回答

3 回答

char?c?=?'a';?//?這個是將'a'這個字符賦值給字符變量c
int?n?=?'c';
float?f?=?'c';
double?d?=?'c';

而后面這三個都是把'c'這個字符賦值給了n、f、d變量,'c'字符的ascii值是99。

所以int變量n的值是99,float變量f的值是99.0,double d的值是99.0。

printf函數用%d格式化輸出int變量,所以輸出了99。 而%f用于格式化float和double型變量,實際上printf將float和double都視為double型,所以都對應%f。默認輸出的精度是小數點后6位,所以就是99.000000。


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

不用單引號

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

字符'c'的ASCII嗎值是99..另外稍微說一下= =。不存在printf("%lf"..這種東西。。只有printf("%f"...)

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

林澤華

我一般會寫%g
2015-02-07 回復 有任何疑惑可以回復我~
#2

Fiona0126 回復 林澤華

...兩者在實現功能上還是有區別的。。
2015-02-07 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么我輸出的結果是99;99.000000;99.000000?

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

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

幫助反饋 APP下載

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

公眾號

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