我知道我错了,可以怎么改啊
#include <stdio.h>
int main()
{
int d, i, j, temp, num[10], n, c, a;
scanf("%d", &d);
a = d;
c = 0;
for (n = 0; d; n++)
{
num[n] = d % 10;
d /= 10;
}
for (i = 0; i < n - 1; i++)
for (j = 0; j < n - i - 1; j++)
if (num[j] > num[j + 1])
{
temp = num[j];
num[j] = num[j + 1];
num[j + 1] = temp;
}
for (i = 0; i < n; i++)
{
c = c * 10;
c += num[i];
if (c > a)
break;
}
printf("%d\n", c);
return 0;
}