在 C 语言中区分字母的大小写,利用 ASCII 码中大写字母和小写字母之间的转换关系(差值为 32),可以将小写字母转换为大写字母。编写程序实现,从键盘上输入一个小写字母,按回车键,程序将该小写字母转换为大写字母,并输出其 ASCII 值。
算法思想
由于大写字母与小写字母之间的差值为 32,因此小写字母转换为大写字母的方法就是将小写字母的 ASCII 码值减去 32,便可得到与之对应的大写字母。利用 getchar 函数从键盘上输入一个小写字母,并将其赋给一个字符变量 a;然后将 a—32 的值赋给字符变量 b;最后进行输出,输出时先输出字母,再将字母以整数形式输出。其具体步骤如下:
① 定义两个字符变量 a、b;
② a=get char();
③ b=a—32;
④ 打印输出。
程序代码
#includeint main() { char a,b; printf("输入一个小写字母:\n"); a=getchar(); b=a-32; printf("转换后的字母为:%c,%d\n",b,b); return 0; }
调试运行结果
输入小写字母 c 时,转换后的大写字母及所对应的 ASCII 值如下所示:输入一个小写字母:
c
转换后的字母为:C,67
输入一个小写字母:
m
转换后的字母为:M,77
总结
① 实例内容要求对 ASCII 码有所了解。知道小写字母和大写字母之间的差值为 32。
② getchar 函数的功能是从键盘上输入一个字符。其一般形式为“getchar()”。通常把输入的字符赋予一个字符变量,构成赋值语句,如:char c;或c=getchar();
③ 使用 getchar 函数还应注意几个问题:
- getchar 函数只能接收单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。
- 使用 getchar 函数前必须包含文件“stdio.h”。