C语言字符串中的空格压缩算法

发布时间:2024-08-29 20:49:46 作者:小樊
来源:亿速云 阅读:80

在C语言中,可以使用以下算法来实现字符串中的空格压缩:

  1. 初始化两个指针,一个用于遍历原始字符串(src),另一个用于存储结果字符串(dest)。
  2. 遍历原始字符串,检查每个字符是否为空格。
  3. 如果当前字符不是空格,将其复制到结果字符串的对应位置,并将结果字符串的指针向前移动一位。
  4. 如果当前字符是空格,检查下一个字符是否也是空格。如果下一个字符不是空格,则将当前空格复制到结果字符串的对应位置,并将结果字符串的指针向前移动一位。如果下一个字符也是空格,则跳过当前空格,继续检查下一个字符。
  5. 重复步骤2-4,直到遍历完整个原始字符串。
  6. 在结果字符串的末尾添加空字符(‘\0’),表示字符串结束。

以下是一个实现该算法的C语言函数:

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

void compress_spaces(char *src, char *dest) {
    int i, j;
    int src_len = strlen(src);

    for (i = 0, j = 0; i < src_len; i++) {
        if (src[i] != ' ') {
            dest[j++] = src[i];
        } else if (i + 1 < src_len && src[i + 1] != ' ') {
            dest[j++] = src[i];
        }
    }

    dest[j] = '\0';
}

int main() {
    char src[] = "  Hello  World!  ";
    char dest[100];

    compress_spaces(src, dest);
    printf("Compressed string: %s\n", dest);

    return 0;
}

这个函数接受两个参数:一个指向原始字符串的指针(src)和一个指向结果字符串的指针(dest)。在这个例子中,我们将压缩后的字符串输出到控制台。

推荐阅读:
  1. Linux下C语言如何实现贪吃蛇小游戏
  2. 怎么在c语言中使用二分法查找数组中的元素

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c语言

上一篇:C语言字符串中的XML数据解析

下一篇:C语言字符串中的特殊字符转义

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》