​C语言

​c语言怎么删除字符串中的空格

小亿
294
2023-12-27 22:54:21
栏目: 编程语言

要删除字符串中的空格,可以使用以下两种方法:

方法一:使用循环遍历字符串,将非空格字符复制到新的字符串中。

#include <stdio.h>
#include <string.h>

void removeSpaces(char *str) {
    int i, j;
    for (i = 0, j = 0; str[i]; i++) {
        if (str[i] != ' ') {
            str[j++] = str[i];
        }
    }
    str[j] = '\0'; // 在新字符串的末尾添加结束符
}

int main() {
    char str[100];
    printf("输入字符串:");
    gets(str);
    removeSpaces(str);
    printf("删除空格后的字符串:%s\n", str);
    return 0;
}

方法二:使用指针操作,直接在原字符串中删除空格。

#include <stdio.h>
#include <string.h>

void removeSpaces(char *str) {
    char *p = str;
    while (*str) {
        if (*str != ' ') {
            *p++ = *str;
        }
        str++;
    }
    *p = '\0'; // 在新字符串的末尾添加结束符
}

int main() {
    char str[100];
    printf("输入字符串:");
    gets(str);
    removeSpaces(str);
    printf("删除空格后的字符串:%s\n", str);
    return 0;
}

以上两种方法都可以删除字符串中的空格,具体选择哪种方法取决于个人偏好和具体的需求。

1
看了该问题的人还看了