1樓:
scanf函式在正確接收匹配資料時返回已為變數正確賦值的個數。這裡只有一個變數a,所以輸入正確時返值為1。故可迴圈檢查scanf的返值是否為1,不為1則說明出錯,要求重新輸入即可。
舉例**如下:
//#include "stdafx.h"//if the vc++6.0, with this line.
#include "stdio.h"
int main(void)
2樓:匿名使用者
c語言好像沒有提供判斷float型別的函式吧,如果是擔心輸入錯誤的話,可以使用while迴圈,在裡面檢測scanf函式的返回值是否正常。另外,scanf對float的讀入是有bug的,最後改用double,不然到時候出了問題,會鬱悶死的
3樓:匿名使用者
float a;
while(scanf("%f",&a)==1)
scanf語句只有在正確輸入相應型別是才會返回函式值1,這樣就可以驗證輸入資料是否為浮點型資料了,希望我的回答對你有所幫助
4樓:匿名使用者
嘗試以下**:
#include
int main(void)
else printf("%f",a);
return 0;
5樓:匿名使用者
#include
int main()
else
flag = 0;
}return 0;
}在vc6.0下驗證過了,沒有問題
c語言中怎麼判斷輸入的數是整數還是浮點數?
6樓:匿名使用者
判斷是否有小數唄,但是不科學,也許有更好方法#include
void main (void)
else}
7樓:匿名使用者
c語言中沒有判斷輸入是整數還是浮點數的既有功能,需要自己實現.
實現方法是把輸入作為字串讀入,然後自行分析該字串表示的是整數還是浮點數.
8樓:匿名使用者
可以用sizeof()來判斷,他們的位元組數是不相等的!int是4,float是8!希望對你有幫助!
c語言如何判斷一個數是不是浮點數
9樓:孝珺琪回胤
不太懂你的意思,正常理解的話,你應該是字串輸入。然後判斷是不是浮點數
如果確定只有0~9
和小數點,那麼只需要判斷是不是含有小數點即可,及時是3.00也是浮點數
10樓:幹依秋厚躍
假如a是浮點數,再定義一個整型變數int
b=a;再定義一個float
c=a/b,假如c=1則浮點數a是整數
如何在c語言中輸入特殊符號,C語言中輸入一些特殊的符號 ,應該怎麼 弄?
方法老簡單了,就擔心你們不會輸入特殊符號 1 單個任意ascii字元輸入 使用ascii輸入。例如 char c 164 符號 2 字串中輸入任意ascii字元 使用轉義字元 ascii碼。例如 char str abc xa4 abc 轉義字元 xhh hh代表字元的十六進位制ascii碼。但是你...
c語言中如何依次輸入陣列中元素,C語言中如何依次輸入陣列中元素
include int main int a 17 int i for i 0 i 17 i scanf d a i return 0 函式功能 把格式化的資料寫入某個字串 函式原型 int sprintf char buffer,const char format argument 返回值 字串長...
c語言scanf 輸入函式,c語言中的scanf 函式的用法
scanf是c語言中的一個輸入函式,與printf函式一樣,都被宣告在標頭檔案stdio.h裡,因此在使用scanf函式時要加上 include 在有一些實現中,printf函式與scanf函式在使用時可以不使用預編譯命令 include 它是格式輸入函式,即按使用者指定的格式從鍵盤上把資料輸入到指...