这道c语言题目是让你编写一个字符串处理函数,其功能可以将字符串中删除所有的大写字母或小写字母(如果你的学号为奇数,则删除大写字母,否则删除小写字母)。然后编写一个主函数调用,对于一个从键盘输入的一行字符,经过该函数处理后输出。
时间: 2024-03-10 09:46:19 浏览: 50
好的,以下是 C 语言代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
void process_string(char* s) {
// 判断学号奇偶性
int is_odd = atoi(getenv("USER")) % 2 == 1;
char* p = s;
if (is_odd) {
// 删除小写字母
while (*p != '\0') {
if (!islower(*p)) {
*s++ = *p;
}
p++;
}
} else {
// 删除大写字母
while (*p != '\0') {
if (!isupper(*p)) {
*s++ = *p;
}
p++;
}
}
*s = '\0';
}
int main() {
char s[100];
printf("请输入一行字符串:");
fgets(s, 100, stdin);
process_string(s);
printf("处理后的字符串为:%s", s);
return 0;
}
```
你可以将上述代码保存为一个 C 文件,然后在命令行中编译并运行该文件,按照提示输入字符串即可。注意,该程序依赖于环境变量 USER,因此需要在运行程序前设置该变量为你的学号。例如,在 Linux 和 macOS 系统中,可以使用以下命令设置该变量:
```bash
export USER=你的学号
```
阅读全文