C语言冒泡排序(数组)

题目描述输入n个数字,使用冒泡排序对其进行升序排序。输入测试次数T每组测试数据格式为:数字个数n,后跟n个数字。假设n<20。输出对每组测试数据,输出冒泡排序的每趟排序结... 题目描述

输入n个数字,使用冒泡排序对其进行升序排序。

输入

测试次数T

每组测试数据格式为:数字个数n,后跟n个数字。假设n<20。

输出

对每组测试数据,输出冒泡排序的每趟排序结果

样例输入

2
5 10 4 43 1 2
10 20 123 12 2 434 54 2 45 23 -10

样例输出

4 10 1 2 43
4 1 2 10 43
1 2 4 10 43
1 2 4 10 43
20 12 2 123 54 2 45 23 -10 434
12 2 20 54 2 45 23 -10 123 434
2 12 20 2 45 23 -10 54 123 434
2 12 2 20 23 -10 45 54 123 434
2 2 12 20 -10 23 45 54 123 434
2 2 12 -10 20 23 45 54 123 434
2 2 -10 12 20 23 45 54 123 434
2 -10 2 12 20 23 45 54 123 434
-10 2 2 12 20 23 45 54 123 434
展开
 我来答
紫薇参星
科技发烧友

2017-11-28 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3486万
展开全部

按照你的要求编写的C语言冒泡排序的程序如下

#include<stdio.h>

int main(){

 int i,j,k,T,n,tmp;

 scanf("%d",&T);

 for(i=0;i<T;i++){

  scanf("%d",&n);

  int a[n];

  for(j=0;j<n;j++){

   scanf("%d",&a[j]);

  }

  for(j=0;j<n-1;j++){

   for(k=0;k<n-1-j;k++){

    if(a[k]>a[k+1]){

     tmp=a[k];

     a[k]=a[k+1];

     a[k+1]=tmp;

    }

   }

   for(k=0;k<n;k++){

    printf("%d ",a[k]);

   }

   printf("\n");

  }

 }

 return 0;

}


运行结果
输入 2
输入 5 10 4 43 1 2
输出 
4 10 1 2 43
4 1 2 10 43
1 2 4 10 43
1 2 4 10 43
输入 10 20 123 12 2 434 54 2 45 23 -10
输出
20 12 2 123 54 2 45 23 -10 434
12 2 20 54 2 45 23 -10 123 434
2 12 20 2 45 23 -10 54 123 434
2 12 2 20 23 -10 45 54 123 434
2 2 12 20 -10 23 45 54 123 434
2 2 12 -10 20 23 45 54 123 434
2 2 -10 12 20 23 45 54 123 434
2 -10 2 12 20 23 45 54 123 434
-10 2 2 12 20 23 45 54 123 434
最强萌萌音
高粉答主

2020-04-06 · 醉心答题,欢迎关注
知道答主
回答量:4.8万
采纳率:2%
帮助的人:3313万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式