【冒泡排序算法】输入n个数进行排序

要求:输入n个数进行排序

实现:使用冒泡排序算法,使用C语言实现

冒泡排序的基本原理:

  1. 比较相邻元素:从数组的开始位置,比较每对相邻的元素。如果前一个元素大于后一个元素,则交换它们。
  2. 重复过程:对每一对相邻元素进行相同的操作,直到没有需要交换的元素为止。这样,最大的元素会"冒泡"到数组的末尾。
  3. 多次遍历:重复以上过程,逐渐缩小比较的范围,直到整个数组有序。

具体代码:

cpp 复制代码
#include<stdio.h>

void bubbleSort(int arr[],int n){
    int i,j,temp;
    for(i=0;i<n-1;i++){
        for(j=0;j<n-1;j++){
            if(arr[j]>arr[j+1]){
                temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
    }
}

int main(){
    int n,i;
    printf("输入需要输入数的数量:");
    scanf("%d",&n);
    int arr[n];

    printf("输入%d个数:",n);
    for(i=0;i<n;i++){
        scanf("%d",&arr[i]);
    }

    bubbleSort(arr,n);

    printf("排序后的数为:");
    for(i=0;i<n;i++){
        printf("%d,",arr[i]);
    }

    return 0;

}

测试输出结果:

输出结果正确!

觉得有帮助的话点个赞吧!

相关推荐
@老蝴18 分钟前
C语言 — 通讯录模拟实现
c语言·开发语言·算法
L-ololois1 小时前
【AI】模型vs算法(以自动驾驶为例)
人工智能·算法·自动驾驶
♚卜卦2 小时前
面向对象 设计模式简述(1.创建型模式)
开发语言·设计模式
安全系统学习2 小时前
网络安全之RCE简单分析
开发语言·python·算法·安全·web安全
Swift社区3 小时前
Swift 解法详解:如何在二叉树中寻找最长连续序列
开发语言·ios·swift
yutian06063 小时前
C# 支持 ToolTip 功能的控件,鼠标悬停弹提示框
开发语言·microsoft·c#
byte轻骑兵3 小时前
【C++特殊工具与技术】优化内存分配(四):定位new表达式、类特定的new、delete表达式
开发语言·c++
chao_7894 小时前
标注工具核心代码解析——class AnnotationVie【canvas.py]
开发语言·python·qt5
GEEK零零七4 小时前
Leetcode 3299. 连续子序列的和
算法·leetcode·动态规划
飞飞是甜咖啡4 小时前
【机器学习】Teacher-Student框架
人工智能·算法·机器学习