C語言中 scanf的返回值與EOF的應用

2021-10-10 19:49:33 字數 717 閱讀 3154

scanf的返回值等於成功輸入的個數

例如

n=

scanf

("%d%d"

,&a,

&b);

如果a和b都被成功賦值,則n=2;如果只有a被成功賦值,則n=1;如果ab都沒能被賦值,則n=0。

讀數時如果遇到錯誤或檔案結尾,那麼scanf的返回值為eof,對應的有符號數時為-1。

做題時,對於沒有明確結束標誌的題目輸入,可以用類似

while

(scanf

("%d%d"

,&a,

&b)!=

eof)

來結束讀入。

由於eof==-1,還可以用位運算取反符~簡化

while(~

scanf

("%d%d"

,&a,

&b))

hdu 1094

題中沒有明確說明給出多少測試樣例,便可用eof結束輸入

#include

intmain()

printf

("%d\n"

,sum);}

return0;

}

C語言中scanf 函式的返回值

c語言中簡單的輸入scanf函式和輸出printf函式,我們經常使用,也很熟悉,但有時卻還是會在這兩個地方犯錯。scanf 函式 功 能 執行格式化輸入 用 法 int scanf char format argument,scanf 函式是通用終端格式化輸入函式,它從標準輸入裝置 鍵盤 讀取輸入的...

c語言scanf返回值

1.scanf 函式是有返回值的,它的返回值可以分成三種情況 1 正整數,表示正確輸入引數的個數。例如執行 scanf d d a,b 如果使用者輸入 3 4 可以正確輸入,返回2 正確輸入了兩個變數 如果使用者輸入 3,4 可以正確輸入a,無法輸入b,返回1 正確輸入了乙個變數 2 0,表示使用者...

C語言printf 與scanf 返回值

在c語言中printf 函式不僅可以將指定資訊列印輸入到螢幕上,同時這個函式在執行的過程中會存在乙個返回值,這個返回值就是所要輸出字串的字元數 包括空格和換行符 include int main void 結果 1111sgsgrg 11包括 n換行符。scanf 在c語言中一般是讀取輸入的字元,也...