1樓:匿名使用者
如果是整數的話,
這麼判斷就行:
float num;
int num2
scanf("%f",&num);
if(num==(int)num) num2=(int)num;//如果輸入正確,將整數儲存到num2中
else printf("eof");
2樓:
用 if (scanf("%d",&x) != 1) 判斷。
scanf,fscanf 送返 正確地讀入的數的個數,例如:
--------------------------int x;
if (scanf("%d",&x) != 1)
3樓:匿名使用者
通過scanf函式的返回值來驗證輸入的合法性。
scanf()函式接收輸入資料時,遇以下情況結束一個資料的輸入:(不是結束該scanf函式,scanf函式僅在每一個資料域均有資料,並按回車後結束)。
① 遇空格、“回車”、“跳格”鍵。
② 遇寬度結束。
③ 遇非法輸入。
scanf()函式返回成功賦值的資料項數,讀到檔案末尾出錯時則返回eof。
如:scanf("%d %d",&a,&b);
如果a和b都被成功讀入,那麼scanf的返回值就是2如果只有a被成功讀入,返回值為1
如果a和b都未被成功讀入,返回值為0
如果遇到錯誤或遇到end of file,返回值為eof。
且返回值為int型.
c語言中怎樣判斷變數名的合法性?
4樓:工號丶
字元只能有大小寫英文字母,數字和下劃線。而且必須以字母或下劃線開頭,並且不能是c語言的關鍵字。。 你列出的只有 t3合法
C語言規定的合法資料常量是什麼樣的
沃桂花桓嬋 1.溢位 資料型別超過了計算機字長的界限而出現的資料溢位 2.溢位可能原因 當應用程式讀取使用者資料,複製到應用程式開闢的記憶體緩衝區中,卻無法保證緩衝區的空間足夠時 假設定義陣列int array 10 而在呼叫時使用array 11 或存放的資料超過int型別容量等 記憶體緩衝區就可...
c語言中如何驗證輸入的資料是否為浮點型
scanf函式在正確接收匹配資料時返回已為變數正確賦值的個數。這裡只有一個變數a,所以輸入正確時返值為1。故可迴圈檢查scanf的返值是否為1,不為1則說明出錯,要求重新輸入即可。舉例 如下 include stdafx.h if the vc 6.0,with this line.include ...
C語言,如何實現?在輸入學分欄下的資料之後,按下回車或者空格之後直接跳轉到成績欄下輸入下數
在完成輸入學分後,將游標置於成績下面,不換行,再輸入即可 比如 成績和學分中間有10個空格 那麼這樣實現 int a scanf d a 輸入學分printf 輸入10個空格scanf d a 輸入成績可以追問! windows 平臺用api可以做到,今天有時間試著寫個例子。有些細節地方我懶的整理了...