Ⅰ c語言中如何實現驗證輸入的是否為數字
LZ要在C中實現這個功能比較麻煩,需要首先要用字元型輸入來判斷,之後把字元型轉化為整型,我寫了一段代碼,給LZ參考:
----------------------------------------------------------
#include
#define
MAX
100
//最大輸入長度為100
int
CharToInt(char
*a,int
l);
//把字元型轉化為int型
int
Ten(int
k);
//10的k次冪
int
main()
{
char
a[MAX];
int
b;
//最終輸入的整數存放在b中
int
i,l,flag;
while(1)
//輸入
{
for(i=0;i
4)
//長度超過4位,非法輸入
{
printf("輸入非法,請重新輸入\n");
continue;
}
flag=0;
for(i=0;i
'9')
{
flag=1;
break;
}
}
if(flag==1)
//其中有一個不在,則輸入非法
{
printf("輸入非法,請重新輸入\n");
continue;
}
break;
}
b=CharToInt(a,l);
//把字元型轉化為int型
//繼續執行下面程序
return
0;
}
int
CharToInt(char
*a,int
l)
{
int
i=0;
int
b=0;
for(i=l-1;i>=0;i--)
{
b+=(a[i]-'0')*Ten(i);
}
return
b;
}
int
Ten(int
k)
{
int
i=0;
int
b=1;
for(i=0;i
評論
0
0
載入更多
Ⅱ C語言,如何判斷一個數是數字啊
用scanf()從鍵盤輸入讀入一個字元串(注意別越界),之後編個循環檢測每個字元,若存在不是字元'.',且>'0',<'9'的字元,那就不是數字,字元'.'若出現一次以上也不是數字。
Ⅲ C語言:如何判斷輸入的是數字還是其他字元
有很多方法:
1、可以用sacnf或gets函數直接接收輸入的字元串,然後用循環遍歷字元串中每一個字元,判斷其是字母還是數字。
2、可以用循環調用getch()或getchar()函數來一個一個字元的接收輸入,同時判讀輸入的是字母還是數字。
至於怎麼判讀是字母還是數字,很簡單,假設字元c,
滿足 (c>='a'&& c<='z')|| (c>='A' && c<='Z')就是字母。
滿足 (c>='0' && c<='9')就是數字。
Ⅳ C語言 如何判斷輸入的是數字還是字元
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始的.cpp文件,例如:test.cpp。
Ⅳ c語言中如何判斷輸入的是字元還是數字
1、可以用sacnf或gets函數直接接收輸入的字元串,然後用循環遍歷字元串中每一個字元,判斷其是字母還是數字。
2、可以用循環調用getch()或getchar()函數來一個一個字元的接收輸入,同時判讀輸入的是字母還是數字。
3、假設字元c,滿足 (c>='a'&& c<='z')|| (c>='A' && c<='Z')就是字母,滿足 (c>=0 && c<=9)就是數字。
(5)如何用c語言判斷數字擴展閱讀:
getch():
所在頭文件:conio.h
函數用途:從控制台讀取一個字元,但不顯示在屏幕上
函數原型:int getch(void)
返回值:讀取的字元
例如:
char ch;或int ch;
getch();或ch=getch();
用getch();會等待你按下任意鍵,再繼續執行下面的語句;
用ch=getch();會等待你按下任意鍵之後,把該鍵字元所對應的ASCII碼賦給ch,再執行下面的語句。
Ⅵ c語言中如何判斷輸入的是否數字
這個程序不難寫,我告訴你思路和演算法,你根據這個編寫代碼就可以了。
1.由於你輸入的這一串數據可能都為數字,也可能包含其它字元,所以首先用一字元數組存放這個字元串。
2.用strlen函數計算這個字元串的長度,在此基礎上藉助for循環或while循環實現數組元素的遍歷。
3.遍歷每一個元素的同時用if語句判斷這個元素的ascii碼所在的范圍是否在48~57之間,如果不在則中止循環,輸出判斷結果(即不是數字)。
4.如果最後一個元素仍然是數字,則整個字元串則為一個大數。