#include<stdio.h>
int main () {
int n,tem;
while(scanf("%d",&n) != EOF) {
int s[1000] = {0},p[1000] = {0};
for(int i = 0; i < n; i++) {
scanf("%d",&s[i]);
tem = s[i];
p[i] = s[i];
while(tem != 0) {
p[i] %= 10;
tem /= 10;
}
}
for(int i = 1; i < n; i++) {
for(int j = 0; j < n-i ; j++) {
if(p[j] == p[j+1] && s[j] < s[j+1] || p[j] > p[j+1]) {
tem = p[j];
p[j] = p[j+1];
p[j+1] = tem;
tem = s[j];
s[j] = s[j+1];
s[j+1] = tem;
}
}
}
for(int i = 0; i < n; i++) {
printf("%d ",s[i]);
}
printf("\n");
}
return 0;
}
s[1000]先複製給p[1000]
求出每項p[]的個位數
然後比大小,p[]在交換的時候s[]也要一起,不然會有問題~