c语言去大写英文字母(要求用指针做)输入一个字符串,将这个字符串中的大写英文字母除去,输出剩余的字符组成的字符串。
时间: 2023-06-15 14:07:47 浏览: 268
以下是使用指针实现去除大写字母的C语言代码:
```c
#include <stdio.h>
#include <string.h>
void remove_uppercase(char *str);
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, 100, stdin);
remove_uppercase(str);
printf("去除大写字母后的字符串为:%s", str);
return 0;
}
void remove_uppercase(char *str) {
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (*str >= 'A' && *str <= 'Z') {
// 如果是大写字母,将它后面的所有字符向前移动一个位置
int j = i;
while (j < len) {
*(str + j) = *(str + j + 1);
j++;
}
len--; // 字符串长度减1
i--; // 继续检查当前位置
}
str++;
}
}
```
使用fgets函数可以接收带空格的字符串输入,遍历字符串,如果当前字符是大写字母,将其后面的所有字符向前移动一个位置,字符串长度减1。注意要在移动完字符后将当前位置i减1,否则会跳过下一个字符。