C言語で入力された値が文字か数字かを判断する方法は何ですか。

C言語では、入力された文字のASCIIコード値を判断することで、文字か数字かを判定することができる。

文字列のASCIIコードが ‘0’ から ‘9’ の範囲内にある場合、それは数字であることがわかります。次のコードを使用して判定できます。

#include <stdio.h>

int main() {
    char input;
    
    printf("请输入一个字符:");
    scanf("%c", &input);
    
    if (input >= '0' && input <= '9') {
        printf("输入的是数字\n");
    } else {
        printf("输入的是字符\n");
    }
    
    return 0;
}

この例では、scanf関数を使って最初にユーザーが入力した文字を読み取り、それを変数inputに保存します。そして、if文を使って入力された文字が数字かどうかを判断します。inputの値が ‘0’以上かつ’9’以下の場合、それは数字と判断され、プログラムは「入力は数字です」と表示します。それ以外の場合、入力されたのは文字であり、プログラムは「入力は文字です」と表示します。

bannerAds