C语言大写字母与小写字母转换三种方式
大写字母与小写字母之间的ASCII 码值减去 32
由于大写字母与小写字母之间的差值为 32,因此小写字母转换为大写字母的方法就是将小写字母的 ASCII 码值减去 32,便可得到与之对应的大写字母。
利用 getchar 函数从键盘上输入一个小写字母,并将其赋给一个字符变量 a;然后将 a—32 的值赋给字符变量 b;最后进行输出,输出时先输出字母,再将字母以整数形式输出。其具体步骤如下:
① 定义两个字符变量 a、b;
② a=get char();
③ b=a—32;
④ 打印输出。
程序代码
#include <stdio.h>
int main()
{
char a,b;
printf("输入一个小写字母:\n");
a=getchar();
b=a-32;
printf("转换后的字母为:%c,%d\n",b,b);
return 0;
}
调试运行结果
输入小写字母 c 时,转换后的大写字母及所对应的 ASCII 值如下所示:
输入一个小写字母:
c
转换后的字母为:C,67
C语言中利用封装好的tolower和toupper函数实现英文字母的大小写转换
范例1:将s字符串内的小写字母转换成大写字母
#include <ctype.h>
int main()
{
char s[] = "aBcDeFgH";
int i;
printf("before toupper() : %s\n", s);
for(i = 0; i < sizeof(s); i++)
s[i] = toupper(s[i]);
printf("after toupper() : %s\n", s);
return 0;
}
范例2:将s字符串内的大写字母转换成小写字母
#include <ctype.h>
int main()
{
char s[] = "aBcDeFgH";
int i;
printf("before tolower() : %s\n", s);
for(i = 0; i < sizeof(s); i++)
s[i] = tolower(s[i]);
printf("after tolower() : %s\n", s);
return 0;
}
C语言strlwr()函数strupr函数:将字符串转换为小写 大写
C语言中,strlwr函数和strupr函数的用法都是直接传入字符串调用,strlwr函数的作用是将字符串参数转换为小写形式。strupr函数的作用是将字符串参数转换为大写形式。
1、strlwr函数
原型:extern char *strlwr(char *s);
用法:#include <string.h>
功能:将字符串s参数转换为小写形式
说明:只转换s参数中出现的大写字母,不改变其它字符。返回指向s参数的指针。
兼容性说明:strlwr和strupr不是标准C库函数,只能在VC中使用。linux gcc环境下需要自行定义这个函数。
2、strupr函数
原型:extern char *strupr(char *s);
用法:#include <string.h>
功能:将字符串s转换为大写形式
说明:只转换s中出现的小写字母,不改变其它字符。返回指向s的指针。
兼容性说明:strupr不是标准C库函数,只能在VC中使用。在linux gcc环境下需要自行定义这个函数。