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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

你好,麻煩幫忙看一下scanf(“%f”,&a);哪里出錯了?

你好,麻煩幫忙看一下scanf(“%f”,&a);哪里出錯了?

慕標5832272 2021-02-19 11:07:05
float a;scanf(“%f”,&a);當我輸入10.1時出錯了,說runtime error但是如果改成 %5.5f 就沒關系,這是怎么回事,%f 默認是幾位小數幾位整數??? 
查看完整描述

2 回答

?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

錯誤原因:指定數據格式時,scanf不添加逗號。

解決的辦法為:

在scanf中添加一個逗號(“%f%f%f”,&a,&b,&c)。

注意:“%f,%f,%f”的格式與“%f%f%f”的格式基本相同,不同之處在于“%f,%f,%f”的格式輸入時為“ ,”確保跟上輸入的數字,在此處輸入的“,”必須為英文。

擴展資料:

scanf使用注意問題

1、在更高版本的Visual Studio編譯器中,scanf被認為是不安全和不推薦使用的,應使用scanf_s而不是scanf。

2、對于字符串數組或字符串指針變量,由于可以將數組名稱轉換為數組,并且指針變量名稱本身就是地址,因此在使用scanf()函數時,無需添加“&” 在他們前面的運算符。

3、可以在格式字符串的“%”格式說明符之間添加一個整數,以指示任何讀取操作中的最大位數。

4、scanf函數中沒有類似于printf的精度控件。

5、在scanf中需要變量地址,如果給定變量名,將發生錯誤。



查看完整回答
反對 回復 2021-03-16
?
侃侃爾雅

TA貢獻1801條經驗 獲得超16個贊

運行是沒問題的

scanf()函數中沒有精度控制。

如: scanf("%5.2f",&a); 是非法的。不能企圖用此語句輸入小數為2位的實數。

我試了下你的%5.5f(輸入會出錯)

可能是你的其他代碼問題



查看完整回答
反對 回復 2021-03-16
  • 2 回答
  • 0 關注
  • 772 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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