当前位置:   article > 正文

字符大小写转换(C语言)_c语言输入一个字符串,将里面的英文进行大小写转换

c语言输入一个字符串,将里面的英文进行大小写转换

在C语言中,可以使用标准库函数或ASCII码进行大小写转换。以下是三种常见的方法:

方法一:使用标准库函数

C语言标准库提供了tolower()toupper()函数,用于将字符分别转换为小写和大写。这两个函数都在头文件ctype.h中定义。

  1. #include <stdio.h>
  2. #include <ctype.h>
  3. int main() {
  4. char ch = 'A';
  5. char lower = tolower(ch);
  6. char upper = toupper(ch);
  7. printf("Lowercase: %c\n", lower);
  8. printf("Uppercase: %c\n", upper);
  9. return 0;
  10. }

方法二:使用ASCII码

在ASCII编码中,大写字母的范围是65('A')到90('Z'),而小写字母的范围是97('a')到122('z')。所以,我们可以通过添加或减去32(即,'a' - 'A''A' - 'a' 的结果)来进行大小写转换。

  1. #include <stdio.h>
  2. int main() {
  3. char ch = 'A';
  4. char lower = ch + ('a' - 'A'); // 或者 ch + 32;
  5. char upper = ch - ('a' - 'A'); // 或者 ch - 32;
  6. printf("Lowercase: %c\n", lower);
  7. printf("Uppercase: %c\n", upper);
  8. return 0;
  9. }

方法三:使用位操作

还可以使用位操作进行大小写转换。ASCII码中,大写和小写字母只有第5位(从右数起,从0开始计数)不同,大写字母的第5位是0,小写字母的第5位是1。所以,我们可以使用异或(^)操作符来切换第5位的值。

  1. #include <stdio.h>
  2. int main() {
  3. char ch = 'A';
  4. char lower = ch ^ 32; // 或者 ch ^ ('a' - 'A');
  5. char upper = ch ^ 32; // 或者 ch ^ ('A' - 'a');
  6. printf("Lowercase: %c\n", lower);
  7. printf("Uppercase: %c\n", upper);
  8. return 0;
  9. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/154305
推荐阅读
相关标签
  

闽ICP备14008679号