c语言

c语言怎么删除重复字符

小亿
147
2024-03-13 19:17:26
栏目: 编程语言

可以通过遍历字符串来删除重复字符,具体步骤如下:

  1. 定义一个新的字符串变量,用于存储删除重复字符后的结果。
  2. 遍历原始字符串中的每个字符,判断该字符是否已经在新的字符串中出现过。
  3. 如果该字符在新的字符串中不存在,则将其添加到新的字符串中。
  4. 最终得到的新的字符串即为删除重复字符后的结果。

下面是一个示例代码:

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

void removeDuplicates(char *str) {
    int len = strlen(str);
    char result[len];
    int index = 0;

    for (int i = 0; i < len; i++) {
        int j;
        for (j = 0; j < index; j++) {
            if (str[i] == result[j]) {
                break;
            }
        }
        if (j == index) {
            result[index++] = str[i];
        }
    }
    result[index] = '\0';

    strcpy(str, result);
}

int main() {
    char str[] = "hello world";
    
    printf("Original string: %s\n", str);
    
    removeDuplicates(str);
    
    printf("String after removing duplicates: %s\n", str);

    return 0;
}

运行以上代码,输入为 “hello world”,输出为 “helo wrd”。

1
看了该问题的人还看了