删除字符串中的空格使用数组c语言

admin 31 0

在C语言中,你可以通过遍历字符串中的每个字符,并检查它是否是空格来实现删除字符串中的空格,如果是空格,就跳过它,否则就把它添加到新的字符串中,下面是一个简单的示例:

```c

#include

#include

void removeSpaces(char* str) {

int j = 0;

int len = strlen(str);

for(int i = 0; i < len; i++) {

if(str[i] != ' ') {

str[j++] = str[i];

}

}

str[j] = '\0'; // 在新字符串的末尾添加空字符

}

int main() {

char str[] = "Hello, World!";

printf("Original string: %s\n", str);

removeSpaces(str);

printf("String after removing spaces: %s\n", str);

return 0;

```

在这个示例中,`removeSpaces`函数遍历输入字符串`str`的每个字符,如果字符不是空格,它就把该字符复制到`str`的当前位置`j`,然后增加`j`的值,所有非空格字符都会被移到字符串的前面,而空格则会被忽略,我们在新字符串的末尾添加一个空字符(`\0`),以标记字符串的结束。

这个函数会直接在原字符串上进行修改,而不是创建一个新的字符串,如果你不希望修改原字符串,你需要创建一个新的字符数组来存储结果。