请问c语言怎么判断输入字母的大小写并对其进行转换

请问c语言怎么判断输入字母的大小写并对其进行转换

问题描述:

img


还是搞不太懂,,,,

ASCII码,小写字母a-z对应 97-122 ,大写字母A-Z对应65-90,将字母定义为char类型,char类型可以跟数字比较大小,直接判断是否在两个区间之内,char>='A' && char <= 'Z' 就说明是大写字母,然后char+32 就刚好是对应的小写字母;小写字母同理。

ASCII码表

大写转小写
char c = 'D';
if(c >= 'A' && c<='Z')
c = c + 'a' - 'A';

小写转大写
char c = 'k';
if(c >= 'a' && c<='z')
c = c + 'A' - 'a';

用字母的ASCII值判断,字符’A‘ 的ASCII值是65,字符’a' 的ASCII值是97,大小写字母之间相差32,26个字母连续增1,‘A'--'Z':65---90 ,'a'--'z':97---122.