学会字符转换

文章介绍了如何在C语言中实现一个字符转换函数,将输入字符串中的大写字母转为小写,小写字母转为大写,其他字符保持不变。给出了两种方法,一种是不使用库函数直接操作字符,另一种是利用ctype.h库中的islower(),isupper(),tolower(),toupper()函数简化处理。
摘要由CSDN通过智能技术生成

题目描述:

输入⼀一个字符串,将字符串中大写字母全部转为小写字母,小写字母转成大写字母,其他字符保持不变。注:字符串的长度小于等于30,其中字符串中包含空格

解法思路:

遍历字符串中的每个字符并对其进行分类处理来解决。具体来说,我们可以使用一个循环来遍历字符串中的每个字符。
1. 对于每个字符,我们检查它是大写字母、小写字母还是其他字符。
2. 如果它是大写字母,我们将其转换为小写字母;
3. 如果它是小写字母,我们将其转换为大写字母;
4. 如果它是其他字符,则不需要进行任何转换。
• 字符串库函数:
1. islower():判断字符是否为小写字母
2. isupper():判断字符是否为大写字母
3. tolower():将字符转换为小写字母
4. toupper():将字符转换为大写字母

解法代码:

//⽅法1:不使⽤库函数
#include <stdio.h>
int main()
{
 char buf[31] = { 0 };
 //输⼊字符串
 scanf("%[^\n]s", buf);
 int i = 0;
 //遍历字符串
 while (buf[i])
 {
 //判断当前字符是否为⼩写字母
 if (buf[i] >= 'a' && buf[i] <= 'z')
 buf[i] -= 32;
 //判读那当前字符是否为⼤写字母
 else if (buf[i] >= 'A' && buf[i] <= 'Z')
 buf[i] += 32;
 i++;
 }
 printf("%s\n", buf);
 return 0;
}


//⽅法2:使⽤库函数
#include <stdio.h>
#include <ctype.h>
int main()
{
 char buf[31] = { 0 };
 //输⼊字符串
 scanf("%[^\n]s", buf);
 int i = 0;
 while (buf[i])
 {
 //判断当前字符是否为⼩写字⺟
 if (islower(buf[i]))
 buf[i] = toupper(buf[i]);
 //判读那当前字符是否为⼤写字⺟
 else if (isupper(buf[i]))
 buf[i] = tolower(buf[i]);
 i++;
 }
 printf("%s\n", buf);
 return 0;
}

运行结果:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值