2. 定义一个有80个元素的字符数组,从键盘输入一串字符,将其中的大写字母转换为小写字母,而将原来为小写的字母转换为大写字母,其他字符不变。yongc语言
时间: 2023-06-02 12:04:32 浏览: 119
从键盘上输入一串英文字符(不含空格与其他字符),统计每个字符的数目,并输出字母及相应的数目。
好的,这是一个编程问题,可以回答。以下是可能的解决方案:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[80];
int i;
printf("请输入字符:");
gets(str);
for (i = 0; i < 80; i++) {
if (isupper(str[i])) {
str[i] = tolower(str[i]);
} else if (islower(str[i])) {
str[i] = toupper(str[i]);
}
}
printf("转换后的字符为:%s\n", str);
return 0;
}
```
代码解释:
- 定义了一个长度为 80 的字符数组 `str`
- 从键盘输入字符串,使用 `gets()` 函数可以读取一整行字符串,包括空格和其他字符
- 对于每个字符,使用 `isupper()` 和 `islower()` 函数分别判断是否为大写字母和小写字母
- 如果是大写字母,将其转换为小写字母,并保存在原来的位置上
- 如果是小写字母,将其转换为大写字母,并保存在原来的位置上
- 其他字符不变
- 最后,使用 `printf()` 函数输出转换后的字符串
希望这个解决方案对你有所帮助!
阅读全文