1502 - 排序
对输入的n个数进行排序并输出。
Input
输入的第一行包括一个整数n(1<=n<=100)。 接下来的一行包括n个整数。
Output
可能有多组测试数据,对于每组数据,将排序后的n个整数输出,每个数后面都有一个空格。
每组测试数据的结果占一行。
Examples
Input
5 5 4 3 1 2
Output
1 2 3 4 5
Solution C
#include <stdio.h> #define MaxSize 1000 typedef struct { int data[MaxSize]; int length; }Sqlist; int main() { Sqlist la; while(scanf("%d",&la.length)!=EOF) { int i, j; for(i = 0; i < la.length; ++i) scanf("%d", &la.data[i]); int flag; for(i = la.length-1; i >= 0; --i) { flag = 0; for(j = 1; j <= i; j++) if(la.data[j-1] > la.data[j]) { int temp =la.data[j]; la.data[j] = la.data[j-1]; la.data[j-1] = temp; flag = 1; } if(flag ==0) break; } for(i = 0; i < la.length; ++i) { printf("%d ", la.data[i]); } printf("\n"); } return 0; }
Solution C++
#include<stdio.h> int main() { int n,i,j,t,a[100]; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) scanf("%d",&a[i]); for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(a[i]>a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } for(i=0;i<n;i++) printf("%d ",a[i]); puts(""); } return 0; }