EX5.29 字符类型判断
本帖最后由 我爱橙 于 2022-6-9 22:04 编辑从键盘键入任意一个字符,判断该字符是英文字母(不区分大、小写)、数字字符还是其它字符。
若键入字母,则屏幕显示 It is an English character.;若键入数字则屏幕显示It is a digit character. ;若输入其它字符,则屏幕显示:It is other character.
程序的运行示例1:
Input simple:
b↙
It is an English character.
程序的运行示例2:
Input simple:
6↙
It is a digit character.
程序的运行示例3:
Input simple:
*↙
It is other character.
程序的运行示例4:
Input simple:
A↙
It is an English character.
输入格式:
输入提示:"Input simple:\n"
输入格式: "%c"
输出格式:
英文字符的输出格式:"It is an English character.\n"
数字的输出格式:"It is a digit character.\n"
其它字符的输出格式:"It is other character.\n"
输入样例:
在这里给出一组输入。例如:
A
#include <stdio.h>
int main()
{
int a;
char b;
printf("Input simple:\n");
scanf("%c");
if(b)
{
printf("It is an English character.\n");
}
else if(a)
{
printf("It is a digit character.\n");
}
else
{
printf("It is other character.\n");
}
return 0;
}
为什么输入字母也是输出It is a digit character?
找了个答案后更正为:
#include <stdio.h>
int main()
{
char ch;
scanf("%c",&ch);
printf("Input simple:\n");
if (ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')
{
printf("It is an English character.\n");
}
else if (ch>='0'&&ch<='9')
{
printf("It is a digit character.\n");
}
else
{
printf("It is other character.\n");
}
return 0;
}
但是为什么(ch>='0'&&ch<='9')就能表示所有的数字呢?
页:
[1]