C语言怎么用switch 语句判断输入的字符是大写字母小写字母还是数字?
4个回答
展开全部
使用switch判断比较麻烦,不建议使用这种方式。
char ch;
// scanf ch
switch(ch) {
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
printf("%c is a number.\n", ch);
break;
case 'a':
case 'b':
....
case 'z':
printf("%c is a lower alphabet.\n",ch);
break;
case 'A':
...
case 'Z':
printf("%c is a upper alphabet.\n",ch);
break;
default:
printf("%c is other ascII code.\n",ch);
}
建议使用#include <ctype.h>中的函数
isdigit
islower
isupper
来进行判断。
追问
可以打省略号吗?
展开全部
如果你确定字符不是大写字母就是小写字母,而没有其他字符的话,倒是能用switch解决
#include <stdio.h>
#include <stdlib.h>
int main()
{
char ch;
printf("please input a letter:");
ch = getchar();
switch (ch / 91)
{
case 0:printf("The character is capital!\n"); break;
case 1:printf("The character is lowercase letter!\n"); break;
default:break;
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
char ch;
printf("please input a letter:");
ch = getchar();
switch (ch / 91)
{
case 0:printf("The character is capital!\n"); break;
case 1:printf("The character is lowercase letter!\n"); break;
default:break;
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用虚拟判断 如果他是字母 flag=1 else fla=0
switch(flag)
case 1:
字母;跳出
Case 2:
数字 ;跳出
switch(flag)
case 1:
字母;跳出
Case 2:
数字 ;跳出
追问
你这方法好像绕过了问题,可以是可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int c=...;
switch(c)
{
case 'A':case 'B' ... case 'Z':
//大写字母
break;
case 'a':case 'b' ... case 'z':
//小写字母
break;
default:
//数字
break;
}
switch(c)
{
case 'A':case 'B' ... case 'Z':
//大写字母
break;
case 'a':case 'b' ... case 'z':
//小写字母
break;
default:
//数字
break;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询