Ⅰ c語言:如何判斷輸入的是數字還是其他字元
有很多方法:
1、可以用sacnf或gets函數直接接收輸入的字元串,然後用循環遍歷字元串中每一個字元,判斷其是字母還是數字。
2、可以用循環調用getch()或getchar()函數來一個一個字元的接收輸入,同時判讀輸入的是字母還是數字。
至於怎麼判讀是字母還是數字,很簡單,假設字元c,
滿足 (c>='a'&& c<='z')|| (c>='A' && c<='Z')就是字母。
滿足 (c>='0' && c<='9')就是數字。
Ⅱ C語言,如何判斷一個數是數字啊
用scanf()從鍵盤輸入讀入一個字元串(注意別越界),之後編個循環檢測每個字元,若存在不是字元'.',且>'0',<'9'的字元,那就不是數字,字元'.'若出現一次以上也不是數字。
Ⅲ c語言裡面怎麼判斷一個數是不是整數有沒有相關的函數
float
x;
int
y;
scnaf("%f",&x);
y=x;
if
(
y==x
)
printf("%d是整數。\n",(int)x);
else
printf("%f不是整數。\n",x);
當然也可以用簡單的條件判斷:if
(
(int)x==x
)
...
Ⅳ c語言如何判斷整數
c語言判斷兩數相除結果是否為整數可採用模運算。
%是C語言提供的「模運算」符,如8%5表示8整除5,取其餘數,結果為3
C語言要求參與模運算符兩端的數,必須是整型類數據,如:char short int long, unsigned這些類型,不能是浮點類型數據。
如,判斷一個數除以100後是不是整數,(該數是不是100的整數倍,或該數能否整除100),C判斷語句可寫成:
intx;
scanf("%d",&x);
if(x%100==0)
printf("%d是100的倍數 ",x);
else
printf("%d不是100的倍數 ",x);
Ⅳ c語言怎麼判斷一個數是不是整數
float x; int y;
scnaf("%f",&x); y=x;
if ( y==x ) printf("%d是整數。\n",(int)x);
else printf("%f不是整數。\n",x);
當然也可以用簡單的條件判斷:if ( (int)x==x ) ...
Ⅵ c語言編程中如何判斷一個數是否為整數
C語言判斷是否為整數,那麼只可能是判斷輸入的值,或者字元串中的值,是否為整數。
因為一旦存儲在變數中,根據變數類型,要麼為整數,要麼為浮點數,是確定的。
一、判斷思路:
1、整數中,按十進制計算,合法字元為0到9,另外在最初位置可以有符號,即+或者-。
2、對於輸入的值,可以先存儲到字元串中,這樣轉換為判斷字元串中是否為整數。
3、先判斷第一個字元是否為+或者-, 如果是,則從第二個開始判斷,否則從第一個開始判斷。
4、對每一個需要判斷的字元,判斷是否在'0'到'9'之間,如果是則合法,否則非法。
5、一旦出現非法字元,說明不是整數。如果所有字元合法,那麼是整數。
二、參考代碼:
intis_int(char*s)//判斷s中是否為整數,如果是返回1,否則返回0.
{
char*p=s;//p指向s。
if(*p=='+'||*p=='-')//如果第一個字元為符號,則從第二個開始遍歷。
p++;
while(*p)//遍歷字元串。
{
if(*p<'0'||*p>'9')return0;//出現非法字元,返回0,表示不是整數。
p++;//判斷下一個字元。
}
return1;//所有都是合法字元,返回1,表示為整數
}
intmain()
{
chars[200];
gets(s);//讀取輸入,存到s中。
if(is_int(s))//判斷並輸出結果
printf("%s是整數 ",s);
else
printf("%s不是整數 ",s);
return0;
}