本题来自pintia.cn

  • 题目要求
  • 代码
  • 测试结果
  • PTA测试结果

题目要求

将N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们。通过一遍扫描,则最后一个元素必定是最大的元素。然后用同样的方法对前N−1个元素进行第二遍扫描。依此类推,最后只需处理两个元素,就完成了对N个数的排序。
本题要求对任意给定的K,输出扫描完第K遍后的中间结果数列。
输入格式:
输入在第1行中给出N和K(1≤K<N≤100),在第2行中给出N个待排序的整数,数字间以空格分隔。
输出格式:
在一行中输出冒泡排序法扫描完第K遍后的中间结果数列,数字间以空格分隔,但末尾不得有多余空格。
输入样例:
6 2
2 3 5 1 6 4
输出样例:
2 1 3 4 5 6

代码

#include<stdio.h>
int main()
{int n,k;//定义单元个数和扫描次数int t;//交换变量int i,j;//遍历参数scanf("%d %d",&n,&k); int a[n-1];//定义数组for(i=0;i<n;i++){scanf("%d",&a[i]);} //数组赋值for(i=0;i<k;i++){//扫描for(j=0;j<n-1-i;j++){//n-1-i意思是每次扫描完就去掉最大值减少一次比较if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}//如果前者大于后者,则交换位置}}for(i=0;i<n-1;i++){//这里采用i<n-1是因为用i<n时末尾也有空格不符合题目要求printf("%d ",a[i]);}printf("%d",a[n-1]);//数组最后一项单独输出return 0;
}

测试结果

测试软件为Dev C++

PTA测试结果

(C语言)冒泡排序法相关推荐

  1. 冒泡排序c java c,冒泡排序,c语言冒泡排序法代码

    冒泡排序,c语言冒泡排序法代码 冒泡排序 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法. 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小.首字 ...

  2. C语言——冒泡排序法

    C语言--冒泡排序法 问题描述: 1, 3, 2, 6, 4, 5, 9, 8, 10, 7进行从小到大排序 代码: # include <stdio.h>int main() {int ...

  3. c语言冒泡排序法代码(c语言冒泡排序法代码讲解)

    求一个C语言冒泡排序法的简单程序怎么办? 下一趟排序开始时,R[1..lastExchange-1]是有序区,R[lastExchange..n]是无序区.这样,一趟排序可能使当前有序区扩充多个记录, ...

  4. c语言冒泡排序项目总结,C语言冒泡排序法心得

    记得以前在大学里学习c语言的时候,刚开始是很吃力的. 入门级别的算法中有个叫冒泡排序法,也有称为气泡排序法.那时候刚接触它就对它的名字特别感兴趣,因为觉得很有意思.好了,废话不多说了,我们先一起简单回 ...

  5. c语言冒泡排序(c语言冒泡排序法详解)

    请讲解下C语言的冒泡排序法 冒泡法,就是通过多次循环排序的一种方法. 第一次循环,让最小(最大)的值浮到第一位, 第二次循环,让剩余的数字中最小(最大)浮到第二位 依次类推. 这种方法就像水泡上浮一样 ...

  6. C语言冒泡排序法,用函数形式实现。

    冒泡排序法 释疑:冒泡排序法是将数组中的元素依次从小到大(Also 从大到小)进行排序下来.请看如下操作! 共有4个数,如 2,4,1,3. 进行N-1次循环,每一次循环中需进行N-1-i 次交换 i ...

  7. c语言冒泡排序法6,C语言的冒泡排序法

    数字的排序: #include"stdafx.h" #include #define SIZE 10 int main() { int a[SIZE] = { 12 ,43,9,1 ...

  8. c语言冒泡排序法程序填空_【C语言】两种方式实现冒泡排序算法

    题目要求 编写一个C语言程序,实现基本的冒泡排序算法. 算法 冒泡排序,用一句话来总结: 一组数中,相邻的两个数进行比较.交换,将最大(小)数交换至尾(首)部,即完成了一次冒泡排序 要想对N个数字进行 ...

  9. 初识C语言——冒泡排序法

    目录 1.什么是冒泡排序? 2.冒泡排序的原理 1.什么是冒泡排序? 冒泡排序是一种经典的排序方法,在一组数据中,访问两个相邻的元素,如果元素不符合顺序就把它们交换位置,符合的话就不用交换位置,依此类 ...

最新文章

  1. [原创]用命令行工具删除TFS2010服务器上的工作区信息
  2. Community Server系列之二:页面之间的关系1[介绍]
  3. iPhone开发环境搭建For PC
  4. python trim函数_python strip()函数 介绍
  5. VS2019 windows桌面应用_多邻国英语测试推出桌面应用程序,确保考试环境安全可靠...
  6. C++ 类型转换(强制类型转换)
  7. LIS(基于贪心的O(NlogN)解法)
  8. 有一个工程师男(女)朋友是什么样的体验?
  9. IT Library第4期《备份域升为主域控制器》
  10. 树莓派4B安装windows xp windows 95( windows xp windows 95 for raspberry pi 4B)
  11. html js中点击事件的三种方法
  12. 无盘服务器chkdsk *: /f)修复命令,让你的电脑运行更快点 使用CHKDSK/F磁盘修复命令...
  13. JAVA实现手机短信验证码在指定有效的时间里校验
  14. 【OpenGL ES】凸镜贴图
  15. 项目管理领域关键知识点之横道图和网络图
  16. ssh_init: Network error: Cannot assign requested address的解决办法
  17. 实现弹簧柔性状态的2种方式 | Solidworks教程
  18. Google OR-Tools(六) 装箱问题 Bin Packing
  19. 海尔集团CEO张瑞敏演讲稿:人不成熟的5大特征
  20. 9100cdn打印有色差_uv打印机出现色差的解决方法

热门文章

  1. iPhone 13基带曝光,苹果拼了
  2. 数据中心主机房 内部各部位装修材料防火等级A级 的溯源
  3. 数据库优化 - SQL优化
  4. 一些实用的电脑软件推荐
  5. CSS background-color、background-image、background-repeat、background-position、backgroundsize……
  6. 广州刷脸支付骗局_刷脸支付骗局!广州公安关于查处李振家等人涉嫌组织、领导传销活动案的通告...
  7. HIT-CSF2019 Hello的一生
  8. 将我理解的web3.0讲给你听
  9. Android 用一个监听器实现多个监听
  10. gitblit如何迁移入gitlab合并迁移_CentOS上安装GitBlit服务