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

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

我把"x+y=%d\n"改成"x+y=%f\n" ,其他沒動,為什么結果顯示0.000000,而不是7.000000呢?

我把"x+y=%d\n"改成"x+y=%f\n" ,其他沒動,為什么結果顯示0.000000,而不是7.000000呢?

正在回答

3 回答

因為你前面是int x,y;所以x,y都是整型變量,得不出float

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

鋼筆 提問者

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

不知道x,y是什么數據類型,語法規定低精度的數據類型不能自動轉換成高精度的數據類型

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

鋼筆 提問者

經你一提知道了,剛返回去復習了自動轉換和強制轉換了,謝啦!
2016-09-11 回復 有任何疑惑可以回復我~

算術具有封閉性,整型算法和float相沖突,你把后面的賦值語句x+y改成(float)(x+y),這樣值就對了

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

鋼筆 提問者

嗯,剛剛經過各種嘗試,知道差異了,謝謝!
2016-09-11 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

我把"x+y=%d\n"改成"x+y=%f\n" ,其他沒動,為什么結果顯示0.000000,而不是7.000000呢?

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

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

幫助反饋 APP下載

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

公眾號

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