输入一个三位数的正整数,将数字位置重新排列,组成一个最大的三位数...
发布网友
发布时间:2024-10-01 10:56
我来回答
共1个回答
热心网友
时间:2024-11-14 04:58
int a,b,c,d;//四个数字
do{
printf("input a num!>=100<=999");//提示请输入1个数字
scanf("%d",&d);//把输入的数字放到d里
}while(d>=999||d<=100)//若不是3位数则重新输入
a=d/100;//分离原数百位放到a
b=d%100/10;//十位放到b
c=d%10;//个位放到c
printf("\n原数是%d",d);//输出原数
if(a<b){a=a+b;b=a-b;}//若a<b交换ab
if(a<c){a=a+c;c=a-c;}//若a<c交换ac
if(b<c){b=b+c;c=b-c;}//若b<c交换bc
d=100*a+10*b+c;//组合新数
printf("新数是%d",d);//输出新数
getch();//暂停一下