c语言如何删除重复值并输出

avatar
作者
猴君
阅读量:0

在C语言中,可以使用数组和循环来删除重复值并输出。

以下是一个示例代码:

#include <stdio.h>  int main() {     int arr[] = {1, 2, 3, 4, 2, 5, 6, 4, 7, 8, 7, 9};  // 示例数组     int n = sizeof(arr) / sizeof(arr[0]);  // 数组长度      for (int i = 0; i < n; i++) {         for (int j = i + 1; j < n; j++) {             if (arr[i] == arr[j]) {  // 如果有重复值                 for (int k = j; k < n - 1; k++) {  // 后面的元素往前移动                     arr[k] = arr[k + 1];                 }                 n--;  // 数组长度减1                 j--;  // 循环变量j减1,以便继续比较移动后的元素             }         }     }      printf("删除重复值后的数组为:");     for (int i = 0; i < n; i++) {         printf("%d ", arr[i]);     }      return 0; } 

运行该代码,输出结果为:

删除重复值后的数组为:1 2 3 4 5 6 7 8 9 

这段代码首先定义了一个示例数组arr,并通过sizeof运算符计算出数组长度n。然后使用两层嵌套循环,依次比较数组中的元素。如果发现有重复值,就将后面的元素往前移动一个位置,并重新计算数组长度n。最后,通过循环输出删除重复值后的数组。

广告一刻

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