思路:先将所有元素排序好,再遍历查找元素是否于下一个元素重复,如果发现重复,下标自增跳过;如果不重复,输出
- #include<stdio.h>
-
- int main()
- {
- int n;
- int a[100];
- printf("输入:");
- scanf("%d", &n);
-
- for (int i = 1; i <= n; i++)
- {
- printf("输入元素%d:", i);
- scanf("%d", &a[i - 1]);
- }
-
- int t = a[0];
- for (int i = 0; i < n; i++)//排序
- {
- for (int j = i + 1; j < n; j++)
- {
- if (a[i] > a[j])
- {
- t = a[i];
- a[i] = a[j];
- a[j] = t;
- }
- }
- }
- printf("\n唯一元素有:");
- for (int i = 0; i < n; i++)//遍历查找有无重复
- {
- if (a[i] == a[i + 1])//如果发现重复,i再自增,跳过a[i+1]
- {
- i++;
- continue;//发现重复元素,跳过输出
- }
- printf("%d ", a[i]);//输出没有重复的元素
- }
-
- return 0;
- }
-