c语言三个数从小到大排序
时间: 2023-09-27 13:08:36 浏览: 84
可以使用冒泡排序或选择排序来实现三个数从小到大排序。
1. 冒泡排序
冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,每次比较相邻的两个元素,如果它们的顺序错误就交换它们。
```
#include <stdio.h>
void bubble_sort(int arr[], int n)
{
int i, j, temp;
for (i = 0; i < n - 1; i++)
{
for (j = 0; j < n - 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[3];
int i;
printf("请输入三个数:\n");
for (i = 0; i < 3; i++)
{
scanf("%d", &arr[i]);
}
bubble_sort(arr, 3);
printf("从小到大排序后的结果为:\n");
for (i = 0; i < 3; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
2. 选择排序
选择排序是一种简单直观的排序算法。它的工作原理如下:首先在未排序的数列中找到最小元素,然后将其存放到数列的起始位置,接着再从剩余未排序的元素中继续寻找最小元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
```
#include <stdio.h>
void selection_sort(int arr[], int n)
{
int i, j, min_index, temp;
for (i = 0; i < n - 1; i++)
{
min_index = i;
for (j = i + 1; j < n; j++)
{
if (arr[j] < arr[min_index])
{
min_index = j;
}
}
temp = arr[i];
arr[i] = arr[min_index];
arr[min_index] = temp;
}
}
int main()
{
int arr[3];
int i;
printf("请输入三个数:\n");
for (i = 0; i < 3; i++)
{
scanf("%d", &arr[i]);
}
selection_sort(arr, 3);
printf("从小到大排序后的结果为:\n");
for (i = 0; i < 3; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
阅读全文