在线编译器 C

#include <stdio.h> int main(void) { int a[10]; for(int i = 0; i < 10; i++) { scanf("%d", &a[i]); } for(int i = 0; i < 10; i++) { int count = 0; for(int j = 0; j < 10; j++) { if(a[i] == a[j]) { count++; } } int printed = 0; for(int k = 0; k < i; k++) { if(a[i] == a[k]) { printed = 1; break; } } if(count > 1 && !printed) { printf("%d ", a[i]); } } printf("\n"); return 0; }
1) Этот код считывает 10 целых чисел в массив, а затем выводит только те числа, которые встречаются в массиве более одного раза (дубликаты). При этом каждое дублирующееся число выводится только один раз.

2) Подсказки:
- Обрати внимание, что внутренний цикл с переменной `k` проверяет, выводилось ли уже текущее число `a[i]` ранее — это предотвращает повторный вывод одного и того же дубликата.
- Для отладки можешь добавить вывод значения `count` для каждого элемента, чтобы убедиться, что логика подсчёта совпадений работает верно.