用c语言编写一个程序,实现数组元素的去重,案例具体要求如下:1,从控制台输入一组数据2,对输入的数据进行去重处理,将去重后的数据输出到控制台
时间: 2024-12-16 08:17:05 浏览: 3
在C语言中,我们可以使用哈希表(如`unordered_set`)或双重循环来实现数组元素的去重。这里是一个简单的例子,使用`stdbool.h`库的`stdbool.h`来存储元素是否已存在,然后遍历数组进行判断:
```c
#include <stdio.h>
#include <stdbool.h>
#define SIZE 100 // 定义数组大小
int main() {
int data[SIZE]; // 输入数组
bool isDuplicate[SIZE] = {false}; // 储存元素是否已存在
int numInput;
printf("请输入数组元素的数量(1-%d): ", SIZE);
scanf("%d", &numInput); // 获取用户输入的元素数量
if (numInput > SIZE) {
printf("输入数量超过数组大小,无法处理。\n");
return 1;
}
printf("请输入%d个元素:\n", numInput);
for (int i = 0; i < numInput; i++) {
scanf("%d", &data[i]);
if (!isDuplicate[data[i]]) { // 如果元素未存在,添加并标记
printf("%d ", data[i]); // 输出去重后的元素
isDuplicate[data[i]] = true;
}
}
printf("\n去重后的数组元素:\n"); // 输出结果
return 0;
}
```
阅读全文