已过,待优化
#include <stdio.h>
#include <stdlib.h>
int main()
{
int N;
scanf("%d",&N);
int t=0;int temp,i,j,x,y;
int a,a1,b,b1,c,c1;
while(t!=6174)
{
a=N/1000;a1=N%1000;
b=a1/100;b1=a1%100;
c=b1/10;c1=b1%10;
int p[4]={a,b,c,c1};
if(a==b&&b==c&&c==c1)
{
printf("%d - %d = 0000",N,N);
break;
}
for(i=0;i<4;i++){
for(j=0;j<3-i;j++){
if(p[j]<p[j+1]){
temp = p[j];
p[j]=p[j+1];
p[j+1]=temp;
}
}
}
x=p[0]*1000+p[1]*100+p[2]*10+p[3];
y=p[0]+p[1]*10+p[2]*100+p[3]*1000;
t=x-y;
N=t;
printf("%04d - %04d = %04d\n",x,y,t);
}
}