c语言如何处理大写与小写字母互换?

c语言如何处理大写与小写字母互换?,第1张

1、首先用vs2017软件新建一个空白的c语言文件,引入头文件并建立主函数,主函数中先定义2个char类型的变量,一个用来接收用户输入的字母,另一个用来接收处理后的结果:

2、接着先用getchar函数将用户输入的字符存入变量a中去,然后用b加上32即可得到小写字母,原因就是由于大写字母与小写字母之间的差值为 32,因此将小写字母的 ASCII 码值 加上32,便可得到与之对应的大写字母。最后打印结果即可:

3、运行编译程序,这里输入任意一个字母按下回车,即可打印出处理后的小写字母。以上就是用C语言处理大写转小写的示例:

#include <stdioh>

void str_trans(char c[])

{

     for(int i=0;c[i];i++)

     {

         if(c[i]<='z' && c[i]>='a')

         {

           c[i]=(c[i]-'a')+'A';

         }else if(c[i]>='A'&&c[i]<='Z')

         {

            c[i]=(c[i]-'A')+'a';

         }

     }

}

int main()

{ char s[101];

  gets(s);

  str_trans(s);

  puts(s);

  scanf("%s",s);

  return 0;

}

C语言中,字符的存储都是使用ascii值来存储的。

根据ASCII码表,我们可以看出:大、小写字母都是按顺序进行存储的,大写字母的ASCII值区间为:65~90,对应的字母为:'A'-'Z';小写字母的ASCII值区间为:97~122,对应的字母为:'a'-'z',因此,将小写字母转化为大写字母,可以直接将该变量减32即可得到对应的大写字母,如:

char ch='a';

printf("upper case '%c'='%c'\n", ch, ch-32 );

如果记不清,大小字母谁大谁小,则可以采用如下方法进行转换:

char ch='x';

printf("upper case '%c'='%c'\n", ch, ch-'a'+'A' ); //减a得到偏移值,加A得到相应的大写字母

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12181875.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存