首页 > 其他分享 >冒泡排序(简单概叙)

冒泡排序(简单概叙)

时间:2023-08-07 23:38:02浏览次数:47  
标签:函数 int 冒泡排序 简单 sizeof main 概叙 定义

#include <stdio.h>

void bubble_sort (int a[],int c)
{
    int e=0;
    for (e=0;e<c-1;e+=1)
    {   
        int h=0;
        int f=0;
        for(f=0;f<c-1-e;f+=1)
        {
            
            if (a[f]>a[f+1])//如果换成变量e会怎么样?
            {
                int g=a[f];
                a[f]=a[f+1];
                a[f+1]=g;
                h=0;
            }
            
        }
        if (h==1)
        {
            break;
        }
        
    }
    
}

int main ()
{
    int a[]={9,8,7,6,5,4,3,2,1,0};

        //int b=0;

            int c=0 ;

                c=sizeof(a)/sizeof(a[0]);

                    bubble_sort(a,c);
                        int d=0;
    for (d=0;d<c;d++)
    {
        printf("%d\n",a[d]);
    }
    
    return 0;
}
  • 如代码所示,该程序意为将数组a内的元素进行排列,输出以小至大的结果。
  • 从上到下,使用了定义一个新函数的方法来实现这个结果。
  • 简单的定义了一个新函数,以“void 函数名 (){}”的形式定义了下来。
  • 在函数内写上关于构建冒泡排序的逻辑代码。
  • 冒泡排序是一种算法,定义为对比相邻两个数的大小,若前者大于后者则调换位置,若后者大于前者则保持不动。
  • 来到主函数main,通过简单的定义变量和逻辑计算就能为冒泡排序提供数据以达到算法实现。
  • 最后以printf输出,显而易见,设计成功。

冒泡排序(简单概叙)_主函数


标签:函数,int,冒泡排序,简单,sizeof,main,概叙,定义
From: https://blog.51cto.com/u_16212408/6999745

相关文章

  • Clickhouse 极简单机版本安装部署
    Clickhouse极简单机版本安装部署摘要Clickhouse的安装与部署其实比较简单.但是为了能够更加简单的部署与使用.尤其是能够可以方便的添加到镜像内进行运行.所以记录一下方便快捷的处理方式.下载与使用的坑1.最新版本的clickhouseARM版本部署是报错的搭建不成......
  • 简单图书管理系统
    一、首页1、homehtml页面<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><scriptsrc="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.js"......
  • php 无限级分类,超级简单的无限级分类,支持输出树状图
    返回一维数组//无限级分类 function GetTree($arr, $pid = 0, $step = 0){    static $tree;    foreach ($arr as $key => $val) {        if ($val['pid'] == $pid) {            $name = isset($val['title']) ? $......
  • 洛谷 P8500 - [NOI2022] 冒泡排序
    显然将权值离散化是没有问题的,因为必然存在一组最优解,满足每个\(a_i\)都取自于某个\(V_i\),于是不管三七二十一先将\(V_i\)离散化了再说。考虑从部分分入手逐步分析这道题:特殊性质A:\(V_i=1\)相当于这个区间中的数必须是\(1\),先将这些数去掉不管,紧接着考虑\(V_i=0\)的......
  • 用Node.js搭建一个简单Web服务器
    Node.js是基于ChromeV8引擎的JavaScript运行时环境,它允许我们在服务器端运行JavaScript代码,这让我们可以用JavaScript构建Web服务器,处理请求和响应。我们一起探索了如何用Node.js搭建一个简单但强大的Web服务器!什么是Nodejs在搭建Web服务器之前,先让我们了解一下今天的主角Nodejs。......
  • 6-1 简单输出整数 (10分)
    6-1 简单输出整数 (10分)本题要求实现一个函数,对给定的正整数N,打印从1到N的全部正整数。函数接口定义:voidPrintN(intN);其中N是用户传入的参数。该函数必须将从1到N的全部正整数顺序打印出来,每个数字占1行。裁判测试程序样例:#include<stdio.h>voidPrintN(intN);intmain(){intN;......
  • 7-12 两个数的简单计算器 (10分)
    7-12 两个数的简单计算器 (10分)7-12 两个数的简单计算器 (10分)本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。输入格式:输入在一行中依次输入操作数1、运算符、操作数2,其间以1个空格分隔。操......
  • 「学习笔记」gdb 调试的简单操作
    gdb是一个命令行下的、功能强大的调试器。在学习gdb前,我们要知道几个最基本的cmd命令。cmd首先,对于win10系统,我们按Windows+R键,打开运行窗口,在里面输入cmd,这样就可以打开cmd命令窗口了,是一个黑框。接下来是一些最基本的命令。F:打开F盘;E:打开E盘,等等......
  • 关于 LCA 的简单记录
    最近做了几道LCA的题目。所以总结一下。首先我们来回顾一下倍增求LCA的流程吧。首先是初始化:进行bfs。处理出每层的深度。处理每个节点的\(2^k\)级父亲,方式为一个递推,即为由\(2^{k-1}\)级祖先的\(2^{k-1}\)祖先推出\(2^k\)级祖先。然后是每次的查询:把y......
  • C关于一维数组以及二维数组的创建和简单利用(下)
    #include<stdio.h>intmain(){inta[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}};intb=0;for(b=0;b<3;b+=1){intc=0;for(c=0;c<4;c+=1){printf("%p||",&a[b][c]);......