当前位置: 首页 > news >正文

2025-02-20 学习记录--C/C++-PTA 7-27 冒泡法排序

一、题目描述 ⭐️

在这里插入图片描述

二、代码(C语言)⭐️

/**
* 冒泡法实现升序
*/

#include <stdio.h>

int main() {
    int N,           // 整数个数 6
        K,           // 扫描遍数 2
        num,         // 待排序的整数 2 3 5 1 6 4
        numArr[100], // 待排序的整数合集 2 3 5 1 6 4
        t;           // 交换数组元素位置的中间变量

    // 输入在第1行中给出N和K(1≤K<N≤100)
    scanf("%d %d",&N,&K);
    // 在第2行中给出N个待排序的整数,数字间以空格分隔。
    for(int i = 0; i < N; i++) {
        scanf("%d",&num);
        numArr[i] = num;
    }

    // 冒泡排序实现升序
    // 【方法可参考我另一篇笔记:https://blog.csdn.net/weixin_48850734/article/details/130294221?spm=1001.2014.3001.5501】
    for(int i = 0; i < K; i++) { // 外层排序K次:i是0到k-1
        for(int j = 0; j < N - i - 1; j++) { // 内层排序N - i - 1次
            if(numArr[j] > numArr[j + 1]) { // 如果前面的元素大于其紧随的后面元素,则交换它们
                t = numArr[j + 1];
                numArr[j + 1] = numArr[j];
                numArr[j] = t;
            }
        }
    }

    // 输出结果
    for(int i = 0; i < N; i++) {
        if(i == N - 1) {
            // 末尾不留空格
            printf("%d",numArr[i]);
        } else {
            printf("%d ",numArr[i]);
        }
    }

    return 0;
}

【补充】🌈 C语言-实现升序降序(冒泡法/沉底法),可参考我的另一篇文章。

在这里插入图片描述

相关文章:

  • PT8022W 单触控单输出 LED 调光 IC
  • uni-app小程序开发 基础知识2
  • python-leetcode 39.二叉树的直径
  • 第一篇:DeepSeek-R1 的诞生与背景
  • (蓝桥杯——10. 小郑做志愿者)洛斯里克城志愿者问题详解
  • kill -9 结束某个用户所有进程的方式-linux019
  • 来京东实习的个人收获与总结
  • 【大模型】DeepSeek-RAG 本地化部署与军事情报应用研究报告
  • spring中aop
  • Canvas进阶-2、可视化应用
  • C++ Primer 库-IO类
  • 解锁C#自定义属性:从0到1的深度实践指南
  • Nginx中$http_host、$host、$proxy_host的区别
  • 2025 vue3面试题汇总,通俗易懂
  • 微信小程序客服消息接收不到微信的回调
  • RT-Thread+STM32L475VET6实现呼吸灯
  • 【PLL】应用:同步
  • EasyRTC:轻量化SDK赋能嵌入式设备,开启智能硬件音视频通讯新篇章
  • 用 Python 构建简易操作系统:探索与实践
  • 在 Mac ARM 架构 (Apple Silicon,例如 M1, M2, M3 芯片) 上使用官方安装包安装 MySQL
  • 十四届全国人大常委会第十五次会议在京举行,审议民营经济促进法草案等
  • 格力电器去年净利增长一成:消费电器营收下滑4%,一季度净利增长26%
  • 伊朗最大港口爆炸:26公里外都能听到,超七百人受伤,原因指向化学品储存
  • 同款瑞幸咖啡竟差了6元,开了会员仍比别人贵!客服回应
  • 理想汽车副总裁刘杰:不要被竞争牵着鼻子走,也不迷信护城河
  • 甘肃张掖至重庆航线开通,串起西北与西南文旅“黄金走廊”