C语言实例:使用指针实现冒泡排序

2022-05-30 16:05:04 浏览数 (1)

代码语言:javascript复制
近期热门学习C语言编程看这篇就够了,信息量很大,建议收藏【置顶】十大排序算法,来这看看-基本思想 动画演示 C语言实现【置顶】
一个好玩的小游戏(纯C语言编写)【置顶】C语言基础——短短几分钟就让你了解数据是怎样在内存中存储的【置顶】
C语言实现将人员信息写入磁盘文件并读出显示【置顶】
c语言学生信息管理系统(基于文件、链表)【必读】
一文搞懂C语言对文件的操作 | 经典【必读】
23种设计模式的通俗解释,看完秒懂【必读】
10分钟,快速掌握C语言指针【必读】
17 张程序员壁纸(使用频率很高)【必读】
冒泡排序原理:图解C语言冒泡排序算法,含代码分析

实例代码

代码语言:javascript复制
//
// Created by 冲哥 on 2021/3/4.
// 微信关注公众号C语言中文社区,免费领取200G学习资料
// C语言实例:使用指针实现冒泡排序
//
#include <stdio.h>

#define N 50 //数组元素最大个数
void bubble_sort(int *p, int num);

int main(){
    int arr[N];
    int num;
    printf("请输入数组元素的个数,注意元素个数不能超过50n");
    scanf("%d",&num);
    printf("请输入要排序的数组:n");
    for (int i = 0; i < num; i  ) {
        scanf("%d", arr i);
    }
    bubble_sort(arr, num);
    return 0;
}

void bubble_sort(int *p, int num){
    int tmp;
    for (int i = 0; i < num-1; i  ) {
        for (int j = 0; j < num-1-i; j  ) {
            if (*(p j) > *(p j 1)){
                tmp = *(p j);
                *(p j) = *(p j 1);
                *(p j 1) = tmp;
            }
        }
    }
    printf("排序后的数据:n");
    for (int k = 0; k < num; k  ) {
        if (k%3 == 0){
            printf("n");
        }
        printf("=", *(p k));
    }
    printf("n");
}

运行结果

0 人点赞