怎樣檢查C語言輸入資料的合法性,C語言中怎樣判斷變數名的合法性?

時間 2021-07-02 04:11:31

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可以做到,今天有時間試著寫個例子。有些細節地方我懶的整理了...