C語言中怎麼使輸入的整形資料(比如學號1001)不為其他字元?即只能輸入純數字。。謝謝

2021-03-27 11:15:23 字數 1611 閱讀 2690

1樓:無悔每一秒

這個得自己判斷把,使用者想輸入是控制不了的,可以增加**: 如果輸入不在你要求的資料範圍內,提示重新輸入。。。

2樓:_珍惜擁有

用程式的方法實現麼,可以供你參考一下我寫的程式:

char a; //定義一個字元變數a來臨時儲存學號的每一個數字

char num[n]; //定義一個陣列用來儲存學號

for(i=1:i<=n;i++)

num[n]=a;

}本人也是新手,有不對之處還望指出,謝謝!

3樓:匿名使用者

1、將學號定義為字串型別,以字元方式讀入每個字元,如果讀入的字元c滿足'0' <= c <= '9'則存入,否則放棄。

2、將學號定義為int型別,再定義一個字元陣列,將讀入的有效資料轉換為int型別即可。

4樓:匿名使用者

你可以先輸入 『1』~『9』 即把askii碼 定死 大於'1' 小於'9' 輸入不再這麼範圍就重新輸入 然後用atoi 函式把char 型的 '1'~'9' 轉換為int 型

5樓:匿名使用者

只能加判斷

輸入字串,判斷不在0-9之間的為錯誤

6樓:匿名使用者

scanf("%d\n",&n);

c語言 如何做到只能輸入數字,輸入其他的,比如字母。就會提示重新輸入。

7樓:北丐

將你的test1函式更改如下:

int test1()

num = 10 * num + s[i] - '0';                                    //

}if(i < 0)

break;

}//for(n = 0; s[n] == '0'; ++n);

input = num ;

return 0;}

8樓:匿名使用者

#include

#include

#include

#include//here

int main()

if(i==len)}}

9樓:匿名使用者

用 atoi函式 判斷字串是否為「純數字」

c語言:如何判斷輸入的是數字還是其他字元 5

10樓:自我程式設計

有很多方法:

1、可以用sa**f或gets函式直接接收輸入的字串,然後用迴圈遍歷字串中每一個字元,判斷其是字母還是數字。

2、可以用迴圈呼叫getch()或getchar()函式來一個一個字元的接收輸入,同時判讀輸入的是字母還是數字。

至於怎麼判讀是字母還是數字,很簡單,假設字元c,滿足 (c>='a'&& c<='z')|| (c>='a' && c<='z')就是字母。

滿足 (c>='0' && c<='9')就是數字。

c語言中怎麼將整形陣列轉化為float或者

int convert int a,int n n為陣列bai 元素個du數 為啥不直接zhi存到char 陣列呢?include include int main int k 0,i 0,len 0,tmp 0 len sizeof a sizeof a 0 for i 0 idaok a i i...

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

scanf函式在正確接收匹配資料時返回已為變數正確賦值的個數。這裡只有一個變數a,所以輸入正確時返值為1。故可迴圈檢查scanf的返值是否為1,不為1則說明出錯,要求重新輸入即可。舉例 如下 include stdafx.h if the vc 6.0,with this line.include ...

c語言scanf 輸入函式,c語言中的scanf 函式的用法

scanf是c語言中的一個輸入函式,與printf函式一樣,都被宣告在標頭檔案stdio.h裡,因此在使用scanf函式時要加上 include 在有一些實現中,printf函式與scanf函式在使用時可以不使用預編譯命令 include 它是格式輸入函式,即按使用者指定的格式從鍵盤上把資料輸入到指...