在 C 语言中区分字母的大小写,利用 ASCII 码中大写字母和小写字母之间的转换关系(差值为 32),可以将小写字母转换为大写字母。编写程序实现,从键盘上输入一个小写字母,按回车键,程序将该小写字母转换为大写字母,并输出其 ASCII 值。

算法思想:
由于大写字母与小写字母之间的差值为 32,因此小写字母转换为大写字母的方法就是将小写字母的 ASCII 码值减去 32,便可得到与之对应的大写字母。

利用 getchar 函数从键盘上输入一个小写字母,并将其赋给一个字符变量 a;然后将 a—32 的值赋给字符变量 b;最后进行输出,输出时先输出字母,再将字母以整数形式输出。其具体步骤如下:

① 定义两个字符变量 a、b;
② a=get char();
③ b=a—32;
④ 打印输出。

#include <stdio.h>

int main(void) {
    char a, b;
    printf("输入一个小写字母:\n");
    a = getchar();
    b = a - 32;
    printf("转换后的字母为:%c,%d\n", b, b);
    return 0;
}

输出结果:

输入一个小写字母:
c
转换后的字母为:C,67

技术要点:

① 实例内容要求对 ASCII 码有所了解。知道小写字母和大写字母之间的差值为 32。

② getchar 函数的功能是从键盘上输入一个字符。其一般形式为“getchar()”。通常把输入的字符赋予一个字符变量,构成赋值语句,如:char c;或c=getchar();

③ 使用 getchar 函数还应注意几个问题:
getchar 函数只能接收单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。
使用 getchar 函数前必须包含文件“stdio.h”。