数字分解排序

数字分解排序

问题描述
输入一个9位以内的正整数n,按数值从高到低的顺序输出n的各位数字。

输入说明
一个正整数n(0<n<1000000000)

输出说明
按数值从高到低的顺序输出n的各位数字,数字之间用空格隔开

输入样例
564391

输出样例
9 6 5 4 3 1
这应当不用多说……上源码

#include<stdio.h>
int main()
{
/**************************函数参数********************************************
*num			目标数字 
*digit[9]		储存各个位数 
*i,j,k,l 		临时变量 
*******************************************************************************/
	int num;
	int digit[9];
	int i,j,k,l;
	
	/*初始化*/ 
	i=0;
	
	/*输入*/
	scanf("%d",&num);
	
	/*限制范围*/
	if(num>=1000000000||num<=0) 
	while(1);
	
	/*拆解数字*/
	while(num>0){
		digit[i]=num%10;
		num/=10;
		i++;
	}
	
	/*大小排序*/ 
	for(j=0;j<i-1;j++)
	for(k=j;k<i;k++)
		if(digit[j]<digit[k]){
			l=digit[j];
			digit[j]=digit[k];
			digit[k]=l;
		}
	
	/*排序*/ 
	for(j=0;j<i;j++)
	printf("%d ",digit[j]);
	
	return 0; 
 } 
 @ RoboMaster!十兮

快期末了,接着更新吧。加油!!!

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页