排序——1. 冒泡排序

华中科技大学复试排序题

题目描述

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

输入描述:

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

输出描述:

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

示例1

输入

4
1 4 3 2

输出

1 2 3 4

解题心得:scanf函数返回被输入函数成功赋值的变量个数,我们不知道有多少组数据会被输入到程序中时, 用while(scanf("%d",&n)!=EOF)判断

#include<stdio.h>

int main(){
    int n,i,j,tmp;
    int array[101];
    while(scanf("%d",&n)!=EOF){
        for(i=0;i<n;i++){
            scanf("%d",&array[i]);
        }
        for(i=0;i<n-1;i++){
            for(j=0;j<n-1-i;j++){
                if(array[j]>array[j+1]){
                    tmp=array[j];
                    array[j]=array[j+1];
                    array[j+1]=tmp;
                }
            }
        }
        for(i=0;i<n;i++){
            printf("%d ",array[i]);
        }
          printf("\n");
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.什么是冒泡排序算法? 将一组元素两两相比较,直至该组元素顺序为由小到大。 2.冒泡排序算法原理: (1)从首位...
    lovinglili阅读 2,795评论 0 2
  • 例2.1 排序 时间限制:1s 内存限制:32M 题目描述: 对输入的n个数进行排序并输出。 输入: 输入的第一...
    young974阅读 1,742评论 0 0
  • 2013.01.06 第2章 经典入门 一 排序 题目描述:对输入的n个数进行排序并输出。输入:输入的第一行包括一...
    我是阿喵酱阅读 5,727评论 0 9
  • 一、并查集 并查集,在一些有N个元素的集合应用问题中,我们通常是在开始时让每个元素构成一个单元素的集合,然后按一定...
    肖一二三四阅读 5,335评论 0 0
  • 小明组织活动的任务 时间限制:2000 ms | 内存限制:65535 KB 难度:6 描述 小明刚进高中,在军训...
    逍遥_9353阅读 4,174评论 1 3