在线编译器 C

#include <stdio.h> int main() { int n; int num[10]={0}; scanf("%d",&n); while(n>0){ int d=n%10; n=n/10; } for(int i=0;i<=9;i++){ if(count[i]>=2){ printf("%d",i); } } return 0; }
这段代码试图找出一个整数中重复出现的数字,但存在几个问题。

代码中声明了一个数组 `num` 用来记录数字出现次数,但实际并没有使用它来计数。在循环中提取了每一位数字 `d`,但没有对 `d` 进行任何计数操作。后面又使用了未定义的变量 `count`,这会导致编译错误。

- 你需要在循环中,对提取出的每一位数字 `d`,增加对应数组元素的计数。比如 `num[d]++` 这样的操作。
- 注意你声明的数组是 `num`,但后面判断时却用了 `count`,变量名需要保持一致。