输入一串字符,将字符串中的大小写进行转换,大写转换为小写,小写转换为大写,输入若不是字符,不做处理。用c语言编写
时间: 2024-10-15 17:18:36 浏览: 58
java实现将字符串中首字母转换成大写,其它全部转换成小写的方法示例
5星 · 资源好评率100%
在 C 语言中,你可以使用标准库函数 `toupper` 和 `tolower` 来实现字符串中字符的大写转小写和小写转大写。但是需要注意的是,这两个函数只对 ASCII 字符有效,并且它们都是逐个字符处理的。
下面是一个简单的示例程序,它会遍历输入的字符串并转换其中的字符:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
void case_convert(char *str) {
int i;
for (i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) { // 检查字符是否为字母
if (islower(str[i])) { // 如果是小写字母,转大写
str[i] = toupper(str[i]);
} else { // 如果是大写字母,转小写
str[i] = tolower(str[i]);
}
}
}
}
int main() {
char input[100];
printf("请输入字符串:");
fgets(input, sizeof(input), stdin); // 读取一行字符串,包括换行符
// 移除fgets结尾的换行符
input[strcspn(input, "\n")] = '\0';
case_convert(input);
printf("转换后的字符串:%s\n", input);
return 0;
}
```
当你运行这个程序时,它会提示你输入一个字符串,然后输出转换后的字符串。非字母字符不会被改变。
阅读全文