现在有一个字符串,你需要把字符串中出现的小写字母转换成大写字母,大写字母转换成小写字母c语言
时间: 2024-12-16 19:17:45 浏览: 59
在C语言中,你可以通过标准库函数`ctype.h`提供的`toupper()`和`tolower()`函数来实现这个转换。以下是一个简单的示例程序,它遍历输入字符串并逐个字符地进行大小写转换:
```c
#include <stdio.h>
#include <ctype.h> // 包含字符处理函数
void swap_case(char *str) {
while (*str != '\0') { // 遍历直到字符串结束
if (islower(*str)) { // 如果是小写字母
*str = toupper(*str); // 转换为大写
} else if (isupper(*str)) { // 如果是大写字母
*str = tolower(*str); // 转换为小写
}
str++; // 移动到下一个字符
}
}
int main() {
char input[100]; // 存储输入字符串
printf("请输入一个字符串:");
fgets(input, sizeof(input), stdin); // 从用户获取输入,并去除结尾的换行符
input[strlen(input)-1] = '\0'; // 修剪多余的换行符
swap_case(input);
printf("转换后的字符串是:%s\n", input);
return 0;
}
```
相关问题
题目描述 现在有一个字符串,你需要把字符串中出现的小写字母转换成大写字母,大写字母转换成小写字母。 输入 输入一个字符串。 输出 输出转换以后的字符串
题目要求你编写一个程序,接受一个字符串作为输入,然后将其中所有的小写字母转换为大写字母,同时将所有的大写字母转换为小写字母。这可以通过C语言中的标准库函数`islower()`和`toupper()`(检查字符是否为小写)以及`tolower()`(将字符转为小写)或`isupper()`(检查字符是否为大写)和`toupper()`(将字符转为大写)来实现。
以下是一个简单的示例代码:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
void swap_case(char *str) {
for (int i = 0; str[i] != '\0'; i++) {
if (islower(str[i])) { // 如果是小写
str[i] = toupper(str[i]); // 转换为大写
} else if (isupper(str[i])) { // 如果是大写
str[i] = tolower(str[i]); // 转换为小写
}
}
}
int main() {
char input[100]; // 假设字符串长度不超过100个字符
printf("请输入一个字符串: ");
fgets(input, sizeof(input), stdin); // 读取一行输入,包括末尾的'\n'
input[strcspn(input, "\n")] = '\0'; // 移除fgets添加的换行符
swap_case(input);
printf("转换后的字符串: %s\n", input);
return 0;
}
```
在这个代码中,`swap_case`函数遍历整个字符串,根据字符的大小写状态进行转换。`main`函数则获取用户的输入并调用这个函数,最后输出处理后的字符串。
将字符串中所有大写字母转换为小写字母小写字母转换为大写字母c语言
#include <stdio.h>
int main() {
char str[] = "HeLLo WoRld"; // 原字符串
int i;
// 遍历字符串中的每个字符
for(i = 0; str[i] != '\0'; i++) {
if(str[i] >= 'a' && str[i] <= 'z') { // 如果是小写字母
str[i] = str[i] - 32; // 转换为大写字母
} else if(str[i] >= 'A' && str[i] <= 'Z') { // 如果是大写字母
str[i] = str[i] + 32; // 转换为小写字母
}
}
printf("转换后的字符串为:%s", str); // 输出转换后的字符串
return 0;
}
阅读全文
相关推荐















