#include <stdio.h> void Squeeze(char *s, char c); int main() { char c; char *s; char a[80]; scanf("%s",a); scanf("%c",c); Squeeze(char *s, char c); printf("%s\n",s); return 0; } void Squeeze(char *s, char c) { int i,j; for (i=0; *(s+i) !='\0'; i++) { if (*(s+i) != 'c') { *(s+j) = *(s+i); j++; } *(s+i) = '\0'; } }修改错误
时间: 2023-12-01 20:02:07 浏览: 85
修改后的代码如下:
```c
#include <stdio.h>
void Squeeze(char *s, char c);
int main() {
char c;
char a[80];
scanf("%s",a);
scanf(" %c",&c); // 注意这里需要加一个空格,否则会读取到上一行输入时剩余的换行符
Squeeze(a, c); // 直接将数组名和字符作为参数传入函数
printf("%s\n",a);
return 0;
}
void Squeeze(char *s, char c) {
int i,j=0; // j 初始值需要设为 0
for (i=0; *(s+i) !='\0'; i++) {
if (*(s+i) != c) { // 判断条件中应该使用参数 c,而不是字符常量 'c'
*(s+j) = *(s+i);
j++;
}
}
*(s+j) = '\0'; // 最后还需要在 j 的位置加上字符串结束符
}
```
修改的内容包括:
1. 在 `scanf("%c",c)` 语句中,应该改为 `scanf(" %c",&c)`,因为上一次输入后,输入缓冲区中可能还有换行符等字符,需要用一个空格来消耗掉这些字符,否则会直接读取到换行符。
2. 在调用 `Squeeze` 函数时,应该直接将数组名和字符作为参数传入,而不是将指针变量和字符常量作为参数。
3. 在 `Squeeze` 函数中,变量 `j` 的初始值应该设为 0,否则会导致无法正确删除字符。
4. 判断条件中应该使用函数参数 `c`,而不是字符常量 `'c'`。
5. 在循环结束后,还需要在 `s` 数组的第 `j` 个位置加上字符串结束符 `\0`。
相关推荐
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.png)
![exe](https://img-home.csdnimg.cn/images/20210720083343.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)