11 fi

#include<bits/stdc++.h>
using namespace std;

int gw_sum(int n){
	int sum=0;
	//不管几位,直接取个位,相加
	//类比进制转化中取每一位 
	while(n){
		sum+=n%10;
		n/=10;
	} 
	return sum;
}
int main(){
	int n,num=0;
	int str1[1002],str2[1002];
	while(cin>>n){
		if(n==0){
			break;
		}
		str1[num]=n;
		//将多个输入数字变为存储在数组中 
		//cout<<str1[i]<<endl;
		num++;
	}
	for(int i=0;i<num;i++){
		str2[i]=gw_sum(str1[i]);
		//将各位和存储在数组2 
	}
	sort(str2,str2+num); 
	int i=0;
	for(i=0;i<num-1;i++){
		cout<<str2[i]<<" ";
	}
	cout<<str2[i]<<endl;
	return 0;
} 
/*
输入:n个非零整数(0<n<1000)  取各位数字   求和
输出:各位和从小到大排序输出 
测试案例:230 20 310 170 210 0
*/

猜你喜欢

转载自blog.csdn.net/dujuancao11/article/details/105518315