117.info
人生若只如初见

c语言中的选择排序法怎么用

在 C 语言中,可以使用选择排序算法对一个数组进行排序。选择排序的基本思想是每次从未排序部分选择最小(或最大)的元素,并将其放置在已排序部分的末尾。

下面是使用选择排序算法对一个整数数组进行排序的示例代码:

#include 

void selectionSort(int arr[], int n) {

int i, j, min_idx, temp;

// 遍历整个数组

for (i = 0; i < n - 1; i++) {

// 找到未排序部分的最小元素位置

min_idx = i;

for (j = i + 1; j < n; j++) {

if (arr[j] < arr[min_idx])

min_idx = j;

}

// 将最小元素与当前位置交换

temp = arr[i];

arr[i] = arr[min_idx];

arr[min_idx] = temp;

}

}

int main() {

int arr[] = {64, 25, 12, 22, 11};

int n = sizeof(arr) / sizeof(arr[0]);

int i;

printf("原始数组:");

for (i = 0; i < n; i++)

printf("%d ", arr[i]);

selectionSort(arr, n);

printf("\n排序后的数组:");

for (i = 0; i < n; i++)

printf("%d ", arr[i]);

return 0;

}

在上述代码中,`selectionSort()` 函数用于实现选择排序算法。`main()` 函数中创建了一个整数数组 `arr`,并计算出数组的长度 `n`。然后,原始数组被输出,并调用 `selectionSort()` 函数对数组进行排序。最后,排序后的数组被输出。

以上代码将输出:

原始数组:64 25 12 22 11 

排序后的数组:11 12 22 25 64

这就是使用选择排序算法在 C 语言中对一个数组进行排序的示例。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe489AzsLAA9eDVE.html

推荐文章

  • c语言goto用法是什么

    在C语言中,goto语句用于从一个位置跳转到另一个位置。它可以用于跳出循环、条件语句或者函数。goto语句的语法如下:
    goto label;
    ...
    label: //...

  • goto在c语言中的运用方法是什么

    goto 语句在 C 语言中允许程序从一个位置跳转到另一个位置。然而,在实际编程中,过度使用 goto 语句通常被认为是一种不好的编程实践,因为它可能导致代码结构混...

  • c语言堆和栈的区别是什么

    C语言中的堆和栈是两种不同的内存分配方式。 栈(Stack):栈是由编译器自动分配和释放的内存区域,用于存储局部变量和函数调用的上下文信息。栈的特点是先进后出...

  • C语言结构体数组怎么定义和使用

    在C语言中,可以通过定义结构体数组来存储多个具有相同数据类型的结构体对象。下面是定义和使用结构体数组的示例代码:
    #include // 定义一个结构体类型

  • mariadb删除数据库的方法是什么

    要删除MariaDB数据库,可以使用以下方法:1. 使用命令行工具:可以使用命令行工具(如mysql命令行工具或者phpMyAdmin等)连接到MariaDB数据库,并执行以下命令:...

  • groovy和java的区别是什么

    Groovy和Java都是编程语言,它们有很多相似之处,但也有一些区别。以下是Groovy和Java之间的一些主要区别: 语法:Groovy的语法比Java更简洁和灵活。它提供了更多...

  • mariadb怎么修改root密码

    要修改MariaDB的root密码,可以按照以下步骤进行:1. 打开终端或命令提示符窗口,并使用root用户登录到MariaDB服务器。2. 运行以下命令进入MariaDB的命令行界面:...

  • idea怎么查看线程运行情况

    要查看线程的运行情况,可以使用以下方法:1. 使用命令行工具:在命令行中使用"top"命令可以查看当前系统中所有运行的进程和线程,并显示其CPU和内存使用情况。2...