用C语言,输入一个字符串S,输出大小写交换
时间: 2024-05-06 20:18:42 浏览: 107
可以使用C语言的字符串处理函数来实现大小写交换,以下是示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char s[100]; // 定义一个最大长度为100的字符串
printf("请输入一个字符串:");
scanf("%s", s); // 读入字符串
for (int i = 0; i < strlen(s); i++) {
if (s[i] >= 'a' && s[i] <= 'z') { // 如果是小写字母
s[i] = s[i] - 'a' + 'A'; // 转换为大写字母
} else if (s[i] >= 'A' && s[i] <= 'Z') { // 如果是大写字母
s[i] = s[i] - 'A' + 'a'; // 转换为小写字母
}
}
printf("大小写交换后的字符串为:%s\n", s);
return 0;
}
```
运行程序,输入一个字符串,即可输出大小写交换后的字符串。注意,上述代码只能处理英文字母,对于其他字符可能会出现错误。如果需要处理更多的字符集,可以使用更加严谨的判断方式。
相关问题
编写c语言代码,输入一个字符串,将大小写字母互换并输出
你可以使用C语言中的字符处理函数来编写一个简单的程序,它会接收用户输入的字符串,然后交换其中的大写和小写字母。下面是一个基本的示例:
```c
#include <stdio.h>
#include <ctype.h> // 包含ctype.h库用于字符转换
void swap_case(char *str) {
int i = 0;
while (str[i]) { // 遍历字符串直到遇到空字符
if (islower(str[i])) { // 如果当前字符是小写
str[i] = toupper(str[i]); // 转换为大写
} else if (isupper(str[i])) { // 否则如果当前字符是大写
str[i] = tolower(str[i]); // 转换为小写
}
i++; // 移动到下一个字符
}
}
int main() {
char input[100];
printf("请输入一个字符串: ");
fgets(input, sizeof(input), stdin); // 使用fgets读取用户输入,包括换行符
input[strcspn(input, "\n")] = '\0'; // 清除fgets留下的换行符
// 调用swap_case函数进行字母交换
swap_case(input);
printf("交换大小写的字符串: %s\n", input);
return 0;
}
```
当你运行这个程序并输入一个字符串后,它会输出大小写字母互换后的结果。
用c语言写分别输入两个字符串,然后用字符串处理函数交换两个字符串,然后比较两个字符串的大小
好的,我来给您写一个示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[100], str2[100], temp[100];
printf("请输入第一个字符串:");
gets(str1);
printf("请输入第二个字符串:");
gets(str2);
// 交换两个字符串
strcpy(temp, str1);
strcpy(str1, str2);
strcpy(str2, temp);
// 比较两个字符串的大小
int cmp = strcmp(str1, str2);
if (cmp > 0) {
printf("%s 大于 %s\n", str1, str2);
} else if (cmp < 0) {
printf("%s 小于 %s\n", str1, str2);
} else {
printf("%s 等于 %s\n", str1, str2);
}
return 0;
}
```
在这个示例代码中,我们使用 `gets` 函数分别输入两个字符串,然后使用 `strcpy` 函数交换两个字符串的值,最后使用 `strcmp` 函数比较两个字符串的大小。如果 `strcmp` 函数返回的值大于0,则说明 `str1` 大于 `str2`;如果返回的值小于0,则说明 `str1` 小于 `str2`;如果返回的值等于0,则说明 `str1` 等于 `str2`。
阅读全文