21xrx.com
2024-11-08 22:17:38 Friday
登录
文章检索 我的文章 写文章
C语言中实现从小到大输出的方法及示例
2023-06-15 13:15:18 深夜i     --     --
C语言 排序 输出 从小到大 冒泡排序法 选择排序法

C语言中,对于一组无序的数值数据进行排序并输出,是非常常见的操作。其中,从小到大输出是较为常规的方式。因此,本文将介绍C语言中实现从小到大输出的方法及示例。

一、方法

C语言中,通常采用冒泡排序法和选择排序法两种方式来实现从小到大排序。具体细节如下:

1.冒泡排序法

冒泡排序法是对无序数列进行排序的基础排序算法。在这个过程中,每次比较两个相邻的元素,将值大的元素交换到右侧。

核心代码:

void bubbleSort(int arr[], int len){

int temp;

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

for(int j = 0; j < len - i - 1; j++){

if(arr[j] > arr[j+1]){

temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp;

}

}

}

}

2.选择排序法

选择排序法是另一种基础排序算法,在这个算法中,首先在整个数列中挑选出最小(大)的值,然后将其与数列的第一个元素交换位置。接着,选出次小(大)的元素与数列的第二个元素交换位置,依次类推。

核心代码:

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

int minIndex, temp;

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

minIndex = i;

for(int j = i+1; j < len; j++){

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

minIndex = j;

}

temp = arr[i];

arr[i] = arr[minIndex];

arr[minIndex] = temp;

}

}

二、示例

以下为冒泡排序法和选择排序法的示例代码及运行结果:

1.冒泡排序法

#include

void bubbleSort(int arr[], int len){

int temp;

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

for(int j = 0; j < len - i - 1; j++){

if(arr[j] > arr[j+1]){

temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp;

}

}

}

}

int main(){

int arr[] = 6;

int len = sizeof(arr)/sizeof(*arr);

bubbleSort(arr, len);

for(int i = 0; i < len; i++){

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

}

printf("\n");

return 0;

}

输出结果:

1 2 3 4 5 6 7 8 9

2.选择排序法

#include

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

int minIndex, temp;

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

minIndex = i;

for(int j = i+1; j < len; j++){

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

minIndex = j;

}

temp = arr[i];

arr[i] = arr[minIndex];

arr[minIndex] = temp;

}

}

int main(){

int arr[] = 2;

int len = sizeof(arr)/sizeof(*arr);

selectionSort(arr, len);

for(int i = 0; i < len; i++){

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

}

printf("\n");

return 0;

}

输出结果:

1 2 3 4 5 6 7 8 9

三、关键词

C语言、排序、输出、从小到大、冒泡排序法、选择排序法

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复