在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。最后,通过循环输出删除重复值后的数组。