详解:字符转换函数(大写转小写,小写转大写)

简介: 详解:字符转换函数(大写转小写,小写转大写)

对于我们在刚刚学习C语言的时候的练习题:不知道大家还能记得多少??


多组输入,输入一个英文字符,判断,如果是大写,则输出小写,如果是小写,则输出大写!!


这个题目,其实在刚刚开始学习的时候,为难了笔者老久都没有攻克!主要还是在于:回车键没有抵消!!所以出现了错误!下面笔者将借用这个题目来带领大家走进: 字符转换函数(大写转小写,小写转大写)!!


对于上述的题目,笔者的参考代码为:


//多组输入,输入一个英文字符,判断,如果是大写,则输出小写,如果是小写,则输出大写!!
#include <stdio.h>
int main()
{
  char ch = 0;
  while (~scanf_s("%c", &ch))
  {
  if (ch >= 'a' && ch <= 'z')
  {
    printf("小写转大写:%c\n", ch - 32);
  }
  else
  {
    printf("大写转小写:%c\n", ch + 32);
  }
  ch = getchar();
  }
  return 0;
}


对于上述代码的运行结果,想必很多老铁,都是显而易见的在心里面已经有了答案!


0a2653c851af460fa595bd959398a8f1.png


上面的代码,是大部分刚刚学习到字符的时候,所书写的代码,之前煎熬了笔者许久,还见过不少秀丽的……嗯,但是现如今笔者也能骄傲的通过操作符来进行大小写之间的转换了!!自豪许久许久!!


言归正传:下面进入笔者本文的主要内容部分!


字符转化函数:int  tolower (int c)  大写转小写


                        int  toupper(int c)  小写转大写


上面的内容,就是本文所使用的语法!确实挺简单的:但也得请知悉!


简单使用的代码为:


#include <stdio.h>
#include <ctype.h>
//所需要的头文件
int main()
{
  char ch = 'a';
  printf("小写转大写:%c\n", toupper(ch));
  return 0;
}

代码的运行结果为:


2d65d23f6d4748949b924e4057485923.png


在这里面,ch本身没有发生变化,打印的只是返回值!!


当然,笔者的这个代码,仅仅是为了向大家介绍一下这两个函数,并没有深入的去写代码!所以,更深层次的东西,请各位老铁自行研究!!


对于上述代码,在运行结束以后,ch的值仍未发生改变,可以通过调试可以看出来:此时在调试的过程中,已经位于最后一行:但ch的值仍然是:'a‘


6de278e6d6694ce5bb08e7e842b7e74b.png


将函数与指针的联立使用方法为:


#include <stdio.h>
#include <ctype.h>
//所需要的头文件
int mian()
{
  char arr[] = "WoXiHuanNi WangYiJun";
  char* p = arr;
  while (*p)
  {
  if (islower(*p))
  {
    *p = toupper(*p);
    //小写转大写
  }
  p++;
  }
  printf("%s\n", arr);
  return 0;
}


上面的代码,可以实现,该目的!!值得借鉴!!


但是也使用了一个C语言定义的库函数:islower  有意者请自行参考借鉴,在此笔者就不做过多的讲解:


12c3b7f3f8814309a195c64f051d4445.png


本文目的已经达到,若有其他问题,请私聊笔者!!


相关文章
hutool 判断字符串是否全部为字母组成,包括大写和小写字母和汉字
hutool 判断字符串是否全部为字母组成,包括大写和小写字母和汉字
hutool 验证该字符串是否是字母(包括大写和小写字母)
hutool 验证该字符串是否是字母(包括大写和小写字母)
|
26天前
将小写字母全部转换成大写字母
【10月更文挑战第17天】将小写字母全部转换成大写字母。
46 5
|
6月前
|
弹性计算 运维 Shell
|
6月前
python-capitalize() 方法:将字符串的第一个字符转换为大写,其余字符转换为小写
python-capitalize() 方法:将字符串的第一个字符转换为大写,其余字符转换为小写
38 0
输入一个字符,判断该字符是大写英文字母,小写英文字母,空格,还是其它字符
输入一个字符,判断该字符是大写英文字母,小写英文字母,空格,还是其它字符
7-102 单词首字母大写
7-102 单词首字母大写
90 0
转换字符串的首字母为大写
转换字符串的首字母为大写
57 0
键盘获取字符串 大写变小写 小写变大写 其他保持不变
键盘获取字符串 大写变小写 小写变大写 其他保持不变