给两个数要求把其中重复的去掉,只保留第1次出现的数并输出用c语言。
时间: 2024-12-22 14:32:12 浏览: 2
C语言第四次作业ppt课件.ppt
在C语言中,你可以通过数组、循环以及条件判断来实现这个功能。以下是一个简单的示例,它创建了一个新的数组,将原数组中重复的元素替换为第一次出现的值:
```c
#include <stdio.h>
void removeDuplicates(int arr[], int n) {
// 假设输入数组已经排序
if (n == 0 || arr[0] != arr[1]) {
return; // 如果只有一个元素或者第一个元素与其他不同,直接返回
}
int uniqueCount = 1; // 初始化唯一元素计数器
for (int i = 1; i < n; ++i) {
if (arr[i] != arr[uniqueCount - 1]) {
arr[uniqueCount++] = arr[i]; // 如果当前元素不同,将其添加到新数组中
}
}
arr[uniqueCount] = 0; // 结束新数组,最后一个元素置零表示结束
printf("数组中无重复的元素:\n");
for (int i = 0; i <= uniqueCount; ++i) {
printf("%d ", arr[i]);
}
}
int main() {
int input[] = {1, 2, 2, 3, 4, 4, 5};
int size = sizeof(input) / sizeof(input[0]);
removeDuplicates(input, size);
return 0;
}
```
在这个程序中,我们首先检查数组是否有序,如果是,我们就遍历数组,如果遇到的元素与前面的不同,就把它放入一个新的数组。最后打印出结果。
阅读全文