华科机考:排序

时间限制:1秒     空间限制:32768K   

题目描述:

    对输入的n个数进行排序并输出。

输入描述:     输入的第一行包括一个整数n(1<=n<=100)。     接下来的一行包括n个整数。

输出描述:     可能有多组测试数据,对于每组数据,将排序后的n个整数输出,每个数后面都有一个空格。     每组测试数据的结果占一行。

输入例子: 4 1 4 3 2

输出例子: 1 2 3 4

         思路:排序嘛,不想用sort()的话,就谁便写一个冒泡算了

代码:

#include <iostream>
#include <stdio.h>
using namespace std;

int main(){
  int n;
  int a[101];
  while(scanf("%d",&n)!=EOF){
   for(int i=0;i<n;i++){
     scanf("%d",&a[i]);
   }
   int temp;
   for(int i=1;i<=n-1;i++){
     for(int j=0;j<=n-1-i;j++){
        if(a[j]>a[j+1]){
          temp=a[j];
          a[j]=a[j+1];
          a[j+1]=temp;
        }
     }
   }
   for(int i=0;i<n;i++)
     printf("%d ",a[i]);
   printf("
");
  }
  return 0;
}
原文地址:https://www.cnblogs.com/mlgjb/p/6657522.html