输入一个字符串,遇到“#”结束。将大小写互换其余字符不变并输出C语言
时间: 2024-11-05 17:25:07 浏览: 6
大小写字母互换(C语言)
在 C 语言中,你可以通过遍历输入字符串、检查每个字符是否是字母,然后交换其大小写来实现这个功能。以下是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h> // 包含用于处理字符类型的库函数
void swap_case(char *str) {
int len = strlen(str);
for (int i = 0; i < len; 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]; // 假设输入字符串长度不超过99个字符
fgets(input, sizeof(input), stdin); // 从标准输入读取字符串,直到遇到换行符
// 检查是否以 '#' 结束,实际应用中可能需要额外处理这一情况
if (input[strlen(input)-1] == '#') {
input[strlen(input)-1] = '\0'; // 截断字符串在'#'之前
}
swap_case(input); // 调用函数交换大小写
printf("转换后的字符串: %s\n", input);
return 0;
}
```
在这个示例中,`swap_case()` 函数接受一个字符串指针,并在循环中判断每个字符是否为字母,如果是则切换大小写。`main()` 函数则负责获取用户输入,必要时处理 '#' 标记,并调用 `swap_case()` 进行操作。
阅读全文