文章
145
粉丝
217
获赞
21
访问
81.5k
#include <stdio.h>
int Figure(int n)//求位数
{
int i = 0;
while(n)
{
i++;
n/=10;
}
return i;
}
void Sort(int a[],int n)
{
int i,j,t;
for(i = 0; i < n-1; i++)
for(j = 1; j < n-i; j++)
if(Figure(a[j]) > Figure(a[j-1]))//位数比较
{
t = a[j];
a[j] = a[j-1];
a[j-1] = t;
}
else if(Figure(a[j]) == Figure(a[j-1]))//位数相同
if(a[j] < a[j-1])
{
t = a[j];
a[j] = a[j-1];
a[j-1] = t;
}
}
int main()
{
int a[1000000],i,n = 0;
while(scanf("%d",&i) != EOF)
a[n++] = i;
Sort(a,n);
for(i = 0; i < n; i++)
printf("%d ",a[i]);
return 0;
}
登录后发布评论
暂无评论,来抢沙发