已知字符串str。字符串str包含字符’x’,’y’。 如果相邻的两个字符不同,消除两个字符,优先从左边进行消除。 xyyx - > yx ->,C语言
时间: 2023-06-14 15:03:41 浏览: 120
以下是使用C语言实现字符串消除的代码:
```
#include <stdio.h>
#include <string.h>
void eliminate(char* str) {
int len = strlen(str);
int i, j;
// 从左到右扫描字符串
for (i = 0; i < len - 1; i++) {
// 如果相邻两个字符不同,消除这两个字符
if (str[i] != str[i + 1]) {
// 从左边开始消除
for (j = i; j > 0; j--) {
str[j] = str[j - 1];
}
// 消除完成后将指针向右移动一位
i++;
len--;
}
}
}
int main() {
char str[100];
printf("请输入字符串:\n");
scanf("%s", str);
eliminate(str);
printf("消除后的字符串为:%s\n", str);
return 0;
}
```
该程序首先读入字符串,然后调用 `eliminate()` 函数对字符串进行消除。`eliminate()` 函数扫描字符串,如果相邻两个字符不同,就从左边开始消除这两个字符,直到消除完所有字符为止。最后输出消除后的字符串。
阅读全文