用C语言写一个删除字符串中的空格
时间: 2023-08-31 18:26:30 浏览: 101
### 回答1:
用C语言删除字符串中的空格可以使用字符串函数str_replace(),例如:str_replace (“”,“”,字符串),它将把空格替换为空字符串。另外,也可以使用字符串函数str_trim()来删除字符串中的空格,例如:str_trim(字符串)。
### 回答2:
使用C语言编写一个删除字符串中空格的函数可以按照以下步骤进行:
1. 定义一个空字符串变量,作为存储删除空格后字符串的容器。
2. 使用循环遍历原始字符串,逐个检查每个字符。
3. 判断当前字符是否为空格,如果是空格则跳过,否则将该字符追加到新的字符串中。
4. 继续遍历原始字符串,直到遍历完所有字符。
5. 最后,将删除空格后的新字符串返回。
以下是一个示例代码实现:
```c
#include <stdio.h>
#include <string.h>
void removeSpaces(char* str) {
int i, j;
for (i = 0, j = 0; str[i] != '\0'; i++) {
if (str[i] != ' ') {
str[j++] = str[i];
}
}
str[j] = '\0';
}
int main() {
char str[100];
printf("输入一个字符串:");
fgets(str, 100, stdin);
removeSpaces(str);
printf("删除空格后的字符串为:%s", str);
return 0;
}
```
这段代码中,我们使用了一个名为 `removeSpaces` 的函数来删除字符串中的空格。通过循环遍历原始字符串,我们跳过所有空格字符,并将非空格字符追加到相同的字符串中。最后,我们将原始字符串中的空格字符替换为 '\0',以确保删除空格后的字符串正确终止。
以上代码可以在控制台中输入字符串,并输出删除空格后的结果。注意,此代码假定输入字符串长度不超过 100 个字符。
### 回答3:
要使用C语言编写一个删除字符串中的空格的程序,可以采用以下方法:
1. 声明一个字符数组变量来存储字符串。
2. 使用`gets()`函数从用户输入中获取字符串,并将其存储在字符数组变量中。
3. 声明一个新的字符数组变量来存储没有空格的字符串,初始化为空字符串。
4. 使用一个循环遍历原始字符串中的每个字符。
5. 在循环内部,检查每个字符是否为空格,如果是,则跳过该字符;如果不是,则将其追加到新的字符数组变量中。
6. 循环结束后,将新的字符数组变量输出为删除了空格的字符串。
以下是一个示例代码:
```c
#include <stdio.h>
void removeSpaces(char* str) {
int i = 0, j = 0;
while (str[i] != '\0') {
if (str[i] != ' ') {
str[j] = str[i];
j++;
}
i++;
}
str[j] = '\0';
}
int main() {
char str[100];
printf("请输入一个字符串:");
gets(str);
removeSpaces(str);
printf("删除空格后的字符串为:%s\n", str);
return 0;
}
```
请注意,该方法只删除了字符串中的空格,如果字符串中存在其他空白字符(如制表符、换行符等),则不会删除它们。如果需要删除其他空白字符,可以将检查条件改为`str[i] == ' ' || str[i] == '\t' || str[i] == '\n'`,以便同时检查并删除这些字符。