给出一个整数,要求对这个数字所包含所有数字按照非递增顺序进行排序,并输出结果。
输入描述: 输入包括一个整数 x (1<=x<=1000000000)。
输出描述: 输出一个整数,表示排序之后得到的整数。
示例
输入 :500613009
输出 :965310000
C++代码如下(编译器:Visual C++ 6.0):
#include<iostream>
using namespace std;
int main(){
int x;
while(cin >> x){
int i = 0;
int j,k,p,n,max,m;
char temp[11];
while(x){
temp[i] = x%10 + '0';
x = x/10;
i ++;
}
temp[i] = 0;
n = strlen(temp); // 整数x的位数n
for(k = 0 ; k < n-1 ; k ++ ){
max = k;
for(int j = k+1 ; j < n ; j ++){
if(temp[max] < temp[j]){
max = j;
}
}
m = temp[k];
temp[k] = temp[max];
temp[max] = m;
}
for(p = 0 ; p < n ; p ++){
cout << temp[p];
}
cout << endl;
}
return 0;
}
运行结果: