编写一个字符串处理函数,其功能是从字符串中删除所有的大写字母或小写字母(若你的学号为奇数,则删除大写字母,否则删除小写字母)。然后编写一个主函数调用,对于一个从键盘输入的一行字符,输出经过该函数处理后
时间: 2023-05-01 20:05:58 浏览: 105
这道题目是让你编写一个字符串处理函数,其功能可以将字符串中删除所有的大写字母或小写字母(如果你的学号为奇数,则删除大写字母,否则删除小写字母)。然后编写一个主函数调用,对于一个从键盘输入的一行字符,经过该函数处理后输出。
相关问题
C语言编程编写一个字符串处理函数,其功能是从字符串中删除所有的大写字母或小写字母(若你的学号为奇数,则删除大写字母,否则删除小写字母)。然后编写一个主函数调用,对于一个从键盘输入的一行字符,输出经过该函数处理后的结果
以下是一个删除大写字母的示例代码:
```c
#include <stdio.h>
#include <string.h>
void remove_uppercase(char *str) {
int i, len = strlen(str);
for(i = 0; i < len; i++) {
if(str[i] >= 'A' && str[i] <= 'Z') { // 判断是否是大写字母
memmove(&str[i], &str[i+1], len-i); // 删除该字符
len--; // 字符串长度减1
i--; // 因为删除了一个字符,所以i也要减1
}
}
}
int main() {
char str[100];
printf("请输入一行字符串:\n");
fgets(str, 100, stdin); // 从键盘读入一行字符串
if(strlen(str) > 0 && str[strlen(str)-1] == '\n') {
str[strlen(str)-1] = '\0'; // 去掉fgets读入字符串末尾的换行符
}
remove_uppercase(str); // 调用函数删除大写字母
printf("处理后的字符串为:%s\n", str);
return 0;
}
```
如果你的学号为偶数,则需要删除小写字母,只需稍作修改即可。
这道题目是让你编写一个字符串处理函数,其功能可以将字符串中删除所有的大写字母或小写字母(如果你的学号为奇数,则删除大写字母,否则删除小写字母)。然后编写一个主函数调用,对于一个从键盘输入的一行字符,经过该函数处理后输出。
好的,我已经明白你的要求了。以下是一个示例代码实现:
```python
def remove_letters(s):
if int(input("请输入你的学号:")) % 2 == 1:
# 奇数删除大写字母
return ''.join(c for c in s if not c.isupper())
else:
# 偶数删除小写字母
return ''.join(c for c in s if not c.islower())
if __name__ == '__main__':
s = input("请输入一个字符串:")
result = remove_letters(s)
print("处理后的字符串为:", result)
```
运行代码时,首先会要求输入学号,根据学号的奇偶性选择删除大写字母或小写字母。然后再让用户输入一个字符串,经过处理后输出结果。注意,这里使用了 `join` 函数和生成器表达式来实现字符串的重新拼接。
阅读全文