c語言中如何驗證輸入的資料是否為浮點型

2021-12-25 07:46:34 字數 1442 閱讀 3850

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 它是格式輸入函式,即按使用者指定的格式從鍵盤上把資料輸入到指...