c語言中如何判斷輸入是否是數字(並非0到9)
1樓:匿名使用者
這個程式不難寫,我告訴你思路和演算法,你根據這個編寫**就可以了。1.由於你輸入的這一串資料可能都為數字,也可能包含其它字元,所以首先用一字元陣列存放這個字串。
2.用strlen函式計算這個字串的長度,在此基礎上藉助for迴圈或while迴圈實現陣列元素的遍歷。3.
遍歷每乙個元素的同時用if語句判斷這個元素的ascii碼所在的範圍是否在48~57之間,如果不在則中止迴圈,輸出判斷結果(即不是數字)。4.如果最後乙個元素仍然是數字,則整個字串則為乙個大數。
2樓:匿名使用者
利用ascii碼判斷 試試看。
3樓:辛思若佟禮
0的ascii
碼好像是48,所以可以利用這個來判斷是否為數字,如果乙個字元與48的差不在0到9就不是數字。
c語言中如何判斷輸入是否是數字並非0到
4樓:匿名使用者
0的ascii 碼好像是48,所以可以利用這個來判斷是否為數字,如果乙個字元與48的差不在0到9就不是數字。
5樓:匿名使用者
假設變數為x,表示式為:!(x>=48&&x<=57).就好了。
c語言 輸入一串字元,計算當中0~9數字的個數
6樓:網友
就在那個for迴圈裡。
條件是 1<10 恆成立。
c語言程式設計問題:判斷輸入字元是否為數字字元中if(c>='0'&&c<='9')為什麼不能寫成if
7樓:匿名使用者
'0'<=c<='9'
根據運算子結合性可知等效於。
0'<=c)<='9'
杜宇子表示式'0'<=c,其結果不是真(1)就是假(0)故,表示式整體必然為真。
8樓:網友
沒有這樣的語法。你這樣寫編譯器理解不了你的意思。
9樓:網友
沒有這種寫法,這是規則,要遵守的。
c語言 如何實現判斷輸入的是否是數字是否是字元
10樓:田真久
使用裡面isdigit()和isalpha函式就可以判斷了#include
#include
int main()
11樓:
標頭檔案裡有兩個函式:
isalpha(ch),判斷ch是不是字元,是的話返回「真」,否則返回「假」;
isdigit(ch),判斷ch是不是數字,是的話返回「真」,否則返回「假」。
包含上標頭檔案,直接用就行了……
12樓:網友
你好,這個問題其實並不難,你只要明白了c++鍵盤輸入的原理,其實鍵盤輸入的都是ask碼然後根據你想要的輸入是int還是char再轉換成你想要的值。
既然你想判斷鍵盤的輸入你可以用乙個字串先把你的輸入存下來然後再判斷那些字元是數字還是字母就ok啦。
eg:#include
void main()
謝謝,,,不知道c中還有ctype,,,其實你可以用ctype中的函式判斷,,,好吧,其實我學的是c++
13樓:網友
//判斷輸入字元與0-9的ascii碼值差就可以。
#include
int main()
c語言如何判斷輸入的是數字還是字元
14樓:網友
用庫函式,isalpha(x)判斷字母,isdigit(x)判斷數字。
15樓:爾夢山柔通
這個**,輸錯了(輸入了字元或者輸入了非1),就會讓你繼續輸入吧。不會報錯。最好在scanf後面加個清空緩衝區,吸收無效字元的語句。
16樓:廣溫倫賦
你這個程式與「輸入的是字元還是數字」沒有關係。
關鍵是不能用double型別的r與0直接這樣進行比較:r!=0應該像下面這樣寫:
constfloat
epsinon
if((x-epsinon)
(x=epsinon)
不可將浮點變數用「==」或「!=」與數字比較,應該設法轉化成「>=」或「<=」此類形式。
用c語言輸入字元判斷大小寫,用C語言輸入字元判斷大小寫
c語言輸入字元判斷大小寫的源 如下 include int main char c printf 輸入一個字元 scanf c c if c a c z c a c z printf c 是大寫 c else printf c 不是小寫 c return 0 擴充套件資料 1 輸入的字元是小寫字母或...
c語言如何向檔案中輸入字串,c語言如何向一個檔案中輸入字串
1.通過fopen開啟檔案,fputs像檔案寫入資料,fclose關閉檔案。include int main 2.file fopen const char fname,const char mode fopen 函式開啟由fname 檔名 指定的檔案,並返回一個關聯該檔案的流.如果發生錯誤,fop...
c語言strlen判斷字元長度的問題
不是6應該是5吧 因為你輸入的長度是4再加 0 所以是5 include include main 試試這樣的,你要是一個字元一個字元的輸入,if a i n 就沒意義了。你定義的字元陣列char 4 他的長度就是5 上你的scanf 輸入後有個 0就6了 scanf s a 這樣 c語言中,存放字...