c语言怎么过滤重复字符串

avatar
作者
猴君
阅读量:0

可以使用两层循环进行遍历和比较,如果发现重复的字符串,则将其过滤掉。

以下是一个示例代码:

#include <stdio.h> #include <string.h>  void filterDuplicateStrings(char strings[][100], int n) {     int i, j;     for (i = 0; i < n; i++) {         if (strings[i][0] == '\0') { // 已经被过滤掉的字符串             continue;         }         for (j = i + 1; j < n; j++) {             if (strcmp(strings[i], strings[j]) == 0) {                 strings[j][0] = '\0'; // 将重复的字符串置为空字符串             }         }     } }  int main() {     char strings[][100] = {         "apple",         "banana",         "orange",         "apple",         "kiwi",         "banana"     };     int n = sizeof(strings) / sizeof(strings[0]);      filterDuplicateStrings(strings, n);      printf("After filtering duplicate strings:\n");     for (int i = 0; i < n; i++) {         if (strings[i][0] != '\0') {             printf("%s\n", strings[i]);         }     }      return 0; } 

输出结果为:

After filtering duplicate strings: apple banana orange kiwi 

注意,这个示例使用了一个二维字符数组来存储字符串,你可以根据实际情况进行修改。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!