今天的两个实例,都与 ASCII 码有关,
大小写字母转换
A 对应在 ASCII 码中的十进制的65,a 则对应ASCII 码中的十进制97,二者相差32。不仅如此,其他字母的大小写直接的ASCII码的差值也是32,因此,加上32或者减去32,完成大小写字母的转换。
#include <stdio.h>
int main()
{
char c;
printf("输入一个字符: ");
// 读取用户输入
scanf("%c", &c);
// %d 显示整数
// %c 显示对应字符
printf("%c 的 ASCII 为 %d", c, c);
if(c >= 65 && c < 90)
printf("%c转换成大写为%c",c ,c+32)
if(c >= 97 && c <= 122)
printf("%c转换成小写为%c", c, c-32)
return 0;
}
判别键盘输入的字符类别
在ASCII码,大写字母的ASCII码范围是65~90,小写字母的范围是97~122;数字的ASCII码的范围是,48~57,据此可以做出判别。
#include<stdio.h>
main()
{
char a;
printf("输入一个字符: ");
scanf("%c", &a);
if(65 <=a && a<= 90)
printf("输入的是大写英文,对应的ASCII码为:%d", a);
else if(97 <= a && a <= 122)
printf("输入的是小写英文,对应的ASCII码为:%d", a);
else if(48 <= a && a <= 57)
printf("输入的是数字,对应的ASCII码为:%d", a);
else
printf("输入的是其他字符");
}