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

C语言学习笔记day8

一维数组冒泡排序法

1. 作用

        将乱序的一维数组按照从小到大的顺序排列

2. 原理示意图

3. 代码

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(void)
{
    int a[5] = {0};
    int len = sizeof(a) / sizeof(a[0]);
    int i = 0;
    int j = 0;
    int tmp = 0;

    srand(time(NULL));
    for (i = 0; i < len; i++)
    {
        a[i] = rand() % 100;
    }

    for (i = 0; i < len; i++)
    {
        printf("%-2d ", a[i]);
    }
    putchar('\n');

    for (j = 0; j < len-1; j++)  //排序轮数,每完成一轮排序,本轮中最大的数字被排在最右边
    {
        for (i = 0; i < len-1-j; i++)  //第j轮排序
        {
            if (a[i] > a[i+1])
            {
                tmp = a[i];
                a[i] = a[i+1];
                a[i+1] = tmp;
            }
            
        }
    }

    for (i = 0; i < len; i++)
    {
        printf("%-2d ", a[i]);
    }
    putchar('\n');

    return 0;
}


http://www.kler.cn/a/272685.html

相关文章:

  • Vue3中ref和reactive的区别
  • Unity HybridCLR Settings热更设置
  • 32单片机综合应用案例——基于GPS的车辆追踪器(三)(内附详细代码讲解!!!)
  • 测试工程师的linux 命令学习(持续更新中)
  • 【设计模式-结构型】装饰器模式
  • 02JavaWeb——JavaScript-Vue(项目实战)
  • 1057:简单计算器
  • onnx 格式模型可视化工具
  • 疫情网课管理系统|基于springboot框架+ Mysql+Java+Tomcat的疫情网课管理系统设计与实现(可运行源码+数据库+设计文档+部署说明)
  • 网络安全实训Day5
  • 开源模型应用落地-qwen模型小试-合并Lora模型-进阶篇(八)
  • 比特币,区块链及相关概念简介(一)
  • Oracle中的commit与rollback
  • 27-Java MVC 模式
  • WebRTC实现一对多直播模式和弹幕发送功能
  • 【机器学习】无监督学习:解锁数据中的潜在结构与关系
  • rsa数据加密无大小限制——golang实现
  • 华为认证大数据工程师(HCIA-Big Data)--填空题
  • 回到街头 - 数字时尚嘉年华:Web3的时尚未来,4月香港兰桂坊盛大启幕
  • SSM框架,MyBatis-Plus的学习(下)
  • 代码+视频,R语言使用BOOT重抽样获取cox回归方程C-index(C指数)可信区间
  • 闯关升级游戏特点,闯关小程序游戏开发
  • acwing算法提高之搜索--剪枝
  • Verilog中`include的用法
  • 网络面试题整理
  • VisualStudio的使用