1、删除字符串中所有的*号(不得使用字符串函数)。例如,若字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容则应当是ABCDEFG。
时间: 2024-06-19 12:02:28 浏览: 33
C语言字符串的相关操作_字符操作函数_数据结构中字符串的相关操作_
5星 · 资源好评率100%
可以使用双指针来实现删除字符串中所有的*号。具体实现方法如下:
1. 定义两个指针 i 和 j,初始值都为 0。
2. 使用循环,将 j 向后移动,当遇到非 * 的字符时,将其赋值给 s[i],同时将 i 向后移动一位。
3. 最终将 s 到 s[i-1] 的字符组成的子串作为删除 * 后的字符串。
以下是代码实现:
```
#include <iostream>
using namespace std;
void removeStars(char s[]) {
int i = 0, j = 0;
while (s[j]) {
if (s[j] != '*') {
s[i++] = s[j];
}
j++;
}
s[i] = '\0';
}
int main() {
char s[] = "****A*BC*DEF*G*******";
removeStars(s);
cout << s << endl; // 输出 ABCDEFG
return 0;
}
```
阅读全文