注意细节,见注释
#include<stdio.h>
#include<math.h>
int num[20000];
int main()
{
int i, j, k;
j = 0;
for (i = 1;i <= 10000; i++)//不能写成for (i = 1;j <= 10000; i++),因为有些数如j=9999在j达到10000之后才会出现。
{
k = i;
j = i;
while (k)
{
j = j + k % 10;
k = k / 10;
}
num[j] = 1;
}
for (i = 1; i <= 10000; i++)
{
if (num[i] == 0)
{
printf("%d\n", i);
}
}
return 0;
}