#include <stdio.h> #include <stdlib.h> #include <math.h> #define SWAP(a,b) {int tmp; tmp = a;a = b;b = tmp;} int *sort(int *ptr,int n); int main(void) { int i,*ptr; int n,a[100];//n:表示输入数据的个数;a存储原始数据; while(scanf("%d",&n)!=EOF&&n) { for(i = 0;i < n;i++) { scanf("%d",&a[i]); } ptr = sort(a,n); //传址调用,改变了原始数组a的内容 for(i = 0;i < n;i++) { printf("%d ",*(ptr+i)); } printf("\n"); } return 0; } int *sort(int *ptr,int n) { int i,j; for(i=0;i<n;i++) { for(j=i+1;j<n;j++) if(abs(ptr[i])<abs(ptr[j])) SWAP(ptr[i],ptr[j]); } return ptr; }
0.0分
0 人评分