6 回答
已采納

InnoFang
TA貢獻(xiàn)5條經(jīng)驗(yàn) 獲得超7個(gè)贊
scanf函數(shù)時(shí)有返回值的
int?scanf(const?char?*?restrict?format,...);
它返回的是成功讀入的數(shù)據(jù)個(gè)數(shù)
就拿你上面的例子來說:
如果你輸入了一個(gè)浮點(diǎn)型的數(shù),那么就會返回 1 ,表示成功讀入;
如果返回結(jié)果不是 1 ,就表示你輸入的值與 %f 不符
那么你這整個(gè)if語句的意思就是:如果輸入的一個(gè)數(shù)不符合float,那么就往下執(zhí)行,否則不執(zhí)行。

艾爾森
TA貢獻(xiàn)33條經(jīng)驗(yàn) 獲得超27個(gè)贊
scanf的返回值是成功讀入的項(xiàng)數(shù),所以當(dāng)輸入的a成功被賦值時(shí)scanf("%f",&a)就相當(dāng)于1

慕的地6079101
TA貢獻(xiàn)3593條經(jīng)驗(yàn) 獲得超1個(gè)贊

望遠(yuǎn)
TA貢獻(xiàn)1017條經(jīng)驗(yàn) 獲得超1032個(gè)贊
如果輸入的數(shù)據(jù)不是小數(shù),當(dāng)然整數(shù)也行,比如輸入字符a就滿足。
- 6 回答
- 0 關(guān)注
- 4994 瀏覽
添加回答
舉報(bào)
0/150
提交
取消