Online Compiler C

#include <stdio.h> int main() { int num; scanf("%d", &num); int digit_counts[10] = {0}; // 初始化数字计数数组 // 统计每个数字出现的次数 while (num > 0) { int digit = num % 10; digit_counts[digit]++; num /= 10; } // 找出出现多次的数字 int first = 1; // 用于控制输出格式 for (int i = 0; i < 10; i++) { if (digit_counts[i] > 1) { if (!first) { printf(" "); } printf("%d", i); first = 0; } } // 如果没有重复数字,输出空行(根据示例输入1234的输出要求) if (first) { printf(""); } printf("\n"); return 0; }
1) Этот код считывает целое число, подсчитывает, сколько раз встречается каждая цифра в этом числе, а затем выводит цифры, которые встречаются более одного раза, разделенные пробелами. Если повторяющихся цифр нет, выводится пустая строка.

2) Подсказки:
- Обрати внимание на операцию `num % 10` — она помогает извлекать последнюю цифру числа.
- Переменная `first` используется для контроля формата вывода, чтобы избежать лишнего пробела перед первым числом.