问题 H: 例题6-3 冒泡排序

问题 H: 例题6-3 冒泡排序

时间限制: 1 Sec  内存限制: 12 MB
献花: 164  解决: 149
[献花][花圈][TK题库]

题目描述

从键盘上输入10个整数,用冒泡法对这10个数进行排序(由小到大)。

输入

以空格分隔的10个整数

输出

依次输出排好序的10个整数,每个数占一行。

样例输入

1 3 5 7 9 2 4 6 8 0

样例输出

0
1
2
3
4
5
6
7
8
9

参考代码:

#include<stdio.h>
int main(){
  int a[10];
  for(int i=0;i<10;i++){
    scanf("%d",&a[i]);
  }
  for(int i=1;i<=9;i++){            //10个元素要比较9趟,其中第一趟比9次,第二趟比8次......需要使用嵌套循环
    for(int j=1;j<=10-i;j++){
      if(a[j-1]>a[j]){   //比较左右两数大小,若左边大于右边,则交换
        int temp=a[j-1];
        a[j-1]=a[j];
         a[j]=temp;
      }
    }
  }
  for(int i=0;i<10;i++){
    printf("%d ",a[i]);
  }
  return 0;
}

 
原文地址:https://www.cnblogs.com/zhhjthing/p/7751019.html