#题目如下图,我想知道为何我在while处无法调试,现在不知道这个程序的正确与否,请各位答主指点迷津
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<string.h>
int maxn(int n)
{
int ge,ten,hund,thoud;
thoud=n/1000;
hund=(n%1000)/100;
ten=(n%100)/10;
ge=n%10;
int a[4];
a[0]=ge;
a[1]=ten;
a[2]=hund;
a[3]=thoud;
int i,j,t;
for(i=0;i<3;i++)
{
for(j=0;j<3-i;j++)
{
if(a[j]<=a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
}
int maxnn;
maxnn=a[0]*1000+a[1]*100+a[2]*10+a[3];
return maxnn;
}
int minn(int n)
{
int ge,ten,hund,thoud;
thoud=n/1000;
hund=(n%1000)/100;
ten=(n%100)/10;
ge=n%10;
int a[4];
a[0]=ge;
a[1]=ten;
a[2]=hund;
a[3]=thoud;
int i,j,t;
for(i=0;i<3;i++)
{
for(j=0;j<3-i;j++)
{
if(a[j]>=a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
}
int minnn;
minnn=a[0]*1000+a[1]*100+a[2]*10+a[3];
return minnn;
}
int main()
{
int n,min,max,t;
scanf("%d",&n);
max=maxn(n);
min=minn(n);
t=max-min;
while((maxn(maxn(t)-minn(t))!=max)||(minn(maxn(t)-minn(t))!=min));
{
t=max-min;
max=maxn(t);
min=minn(t);
printf("%d,%d,%d",t,max,min);
}
printf("\n1%d,%d,%d",max-min,max,min);
}