如果有问题欢迎指出......本代码只在本地测试,无法提交OJ测试。难免会有问题。共同学习.......
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int cmp(const void *a,const void *b){
return *(int *)a - *(int *)b;
}
int main ()
{
int N,index,i;
int Sum[1001];
//freopen("C:\\Users\\SJF\\Desktop\\acm.txt","r",stdin);
memset(Sum,0,sizeof(Sum));
index = 0;
while(scanf("%d",&N) != EOF){
if(N == 0){
//排序
qsort(Sum,index,sizeof(Sum[0]),cmp);
for(i = 0;i < index;i++){
if(i == index-1){
printf("%d\n",Sum[i]);
}
else{
printf("%d ",Sum[i]);
}
}
break;
}
//计算各位之和
while(N){
Sum[index] += N % 10;
N /= 10;
}
index++;
}
return 0;
}