75.用C语言实现冒泡排序(兼容VC++6.0)

2025-07-26  本文已影响0人  Joyner2018

在学习排序算法的过程中,冒泡排序(Bubble Sort) 是最基础也最经典的一种。尽管它在效率上不如快速排序或归并排序,但其简单直观的逻辑非常适合初学者掌握排序的基本概念。本文将介绍如何在 VC++6.0 环境下,使用 C语言 编写一个完整的冒泡排序程序。


✨ 什么是冒泡排序?

冒泡排序是一种交换排序,它通过重复比较相邻的两个元素,将较大的元素逐渐“冒泡”到数组的末尾,最终实现数组的升序或降序排列。

💡 冒泡排序的基本思路如下:


💻 程序实现(VC++ 6.0 兼容)

下面是一个使用 C语言标准语法 编写的冒泡排序程序,适用于 VC++6.0 环境。

✅ 完整代码如下:

#include <stdio.h>

#define SIZE 10  // 定义数组大小

void bubbleSort(int arr[], int n);
void printArray(int arr[], int n);

int main() {
    int arr[SIZE] = {34, 12, 25, 9, 56, 44, 78, 3, 18, 50};
    int i;

    printf("排序前的数组:\n");
    printArray(arr, SIZE);

    bubbleSort(arr, SIZE);

    printf("排序后的数组:\n");
    printArray(arr, SIZE);

    return 0;
}

// 冒泡排序函数
void bubbleSort(int arr[], int n) {
    int i, j, temp;
    for (i = 0; i < n - 1; i++) {
        for (j = 0; j < n - 1 - i; j++) {
            if (arr[j] > arr[j + 1]) {
                // 交换两个元素
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}

// 打印数组
void printArray(int arr[], int n) {
    int i;
    for (i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

🧪 运行结果示例

排序前的数组:
34 12 25 9 56 44 78 3 18 50 
排序后的数组:
3 9 12 18 25 34 44 50 56 78

🛠️ 在 VC++6.0 中创建工程的小提示:

如果你使用的是 VC++ 6.0,可以按以下步骤创建项目并运行:

  1. 打开 VC++ 6.0,选择 File > New > Projects
  2. 选择 Win32 Console Application 类型;
  3. 选择一个文件夹和工程名称;
  4. 添加一个 .c 文件(例如 main.c),将上述代码复制进去;
  5. 使用 Build > Build xxx.exe 编译项目;
  6. 运行程序即可查看输出。

🔍 思考与扩展

你可以尝试:


🧾 总结

通过本文,你学会了:

冒泡排序虽然简单,但理解好它,是进入更复杂算法世界的重要一环。如果你是初学者,建议多动手敲代码、观察每一轮的变化,相信你很快就会掌握排序算法的精髓!


📌 下一步学习建议:尝试将冒泡排序封装成一个更通用的函数,接受动态长度的数组或指针操作,再向指针与内存管理进发!

如有任何问题或改进建议,欢迎留言交流~👋

上一篇 下一篇

猜你喜欢

热点阅读