2020-03-12

四位正整数各位分离升序排列

从键盘输入一个四位正整数,首先分离出该整数中的每一位数字,并按升序显示输出各位数字;然后用分离出的最大数做为十位数,最小数做为个位数组成一个新的数字,并显示输出结果。例如,若输入的四位正整数为9215,按升序显示输出分离出的各位数字为1 2 5 9;组成数字为91。
具体要求:
①四位正整数由键盘输入,程序应该对输入的数字是否为四位正整数进行简单的判断;
②对输出结果要有具体说明。

#include<stdio.h>
int main()
{	
    int a,b,c,d,n1,n2,y1,y2,z1,z2,e,x,t;
	printf("请输入一个四位正整数:");	
	scanf("%d",&x);	
	if(x>9999||x<1000)	
	printf("输入错误!\n");	
	else{	
	a=x/1000;
	b=x/100%10;	
	c=x/10%10;	
	d=x%10;
		y1=a>b?a:b;
		z1=c>d?c:d;	
		n1=y1>z1?y1:z1;	
		y2=a<b?a:b;		
		z2=c<d?c:d;	
		n2=y2<z2?y2:z2;		
		e=10*n1+n2;	
		printf("重组的二位数为:%d\n",e);	
		if(a>b)
			{		
		t=a;		
		a=b;		
		b=t;	
		}	
		if(a>c)	
		{		
		t=a;		
		a=c;		
		c=t;	
		}	
		if(a>d)	
		{			
		t=a;		
		a=d;		
		d=t;	
		}	
		if(b>c)	
		{		
		t=b;		
		b=c;		
		c=t;	
		}	
		if(b>d)	
		{		
		t=b;		
		b=d;		
		d=t;	
		}	
		if(c>d)	
		{			
		t=c;		
		c=d;		
		d=t;	
		}		
		printf("按照升序输出分离的各位数字为:%d,%d,%d,%d\n",a,b,c,d);
		}	
		return 0;
		}
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值