服务器之家

服务器之家 > 正文

C语言中利用封装好的函数实现英文字母的大小写转换

时间:2021-06-06 15:19     来源/作者:C语言教程网

在C语言中,利用tolower和toupper两个函数实现英文字母的大小写之间的转换

范例1:将s字符串内的小写字母转换成大写字母

?
1
2
3
4
5
6
7
8
9
10
11
#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字符串内的大写字母转换成小写字母

?
1
2
3
4
5
6
7
8
9
10
11
#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语言字符串的大小写字母转化函数

问题描述:

编写一个函数my_strlwr实现将一个字符串中的大写字母转化为小写字母,小写字母不改变,并将其输出。

程序分析:

大写字母转化为小写字母,根据其ASCII码值的关系,加上32就可以得到。编写函数时,将其返回值设为该字符串空间的首地址,这样,通过函数的调用后,就可以通过其首地址输出整个字符串。

代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include<stdio.h>
#include<assert.h>
 
char * my_strlwr(char * str)   //定义一个my_strlwr函数
{
    assert(str);         //str的非空性
    char *ret = str;       //定义一个ret保存最初的str
    while(*str != '\0')      //判断字符串是否结束
    
        if((*str >= 'A')&&(*str <= 'Z'))//判断当前啊字符是否是                        大写字母
        {
            *str = *str +32;     //将其转化为小写字母
            str++;
        }
        else
            str++;
    }
    return ret;       //返回该字符串数组的首地址
}
int main()
{
    char str1[] = {"ABCDCFbbbdgeJhssW"};
 
    printf("%s\n",my_strlwr(str1));  //调用该函数,并且输出新的字符串
 
    return 0;
}

C语言中利用封装好的函数实现英文字母的大小写转换

 

ps:推荐一款在线英文大小写转换工具:https://tool.zzvips.com/t/daxiaoxie/

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021德云社封箱演出完整版 2021年德云社封箱演出在线看
2021德云社封箱演出完整版 2021年德云社封箱演出在线看 2021-03-15
返回顶部