c语言3个数字大小排序
时间: 2023-09-12 07:10:57 浏览: 127
以下是使用 C 语言实现的三个数字大小排序的代码示例:
```c
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个数字:\n");
scanf("%d%d%d", &a, &b, &c);
if (a > b) {
int temp = a;
a = b;
b = temp;
}
if (a > c) {
int temp = a;
a = c;
c = temp;
}
if (b > c) {
int temp = b;
b = c;
c = temp;
}
printf("从小到大排序后的结果为:%d %d %d\n", a, b, c);
return 0;
}
```
该程序中,使用 `scanf` 函数获取用户输入的三个数字,依次比较它们的大小,然后将它们按从小到大的顺序输出。
相关问题
c语言多个数字大小排序
在C语言中,对多个数字进行排序通常可以使用选择排序、插入排序、冒泡排序、快速排序、归并排序等算法。这里以最常见的冒泡排序和快速排序为例讲解:
1. **冒泡排序**:
冒泡排序是一种简单直观的排序算法,它重复地遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
```c
void bubble_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
```
2. **快速排序**:
快速排序是一种分治策略的典型应用,通过选取一个基准值(pivot),将数组分为两部分,一部分的所有元素都小于基准值,另一部分的所有元素都大于基准值,然后递归地对这两部分进行排序。
```c
void quick_sort(int arr[], int low, int high) {
if (low < high) {
int pivot_index = partition(arr, low, high);
quick_sort(arr, low, pivot_index - 1);
quick_sort(arr, pivot_index + 1, high);
}
}
int partition(int arr[], int low, int high) {
int pivot = arr[high];
int i = (low - 1);
for (int j = low; j <= high - 1; j++) {
if (arr[j] < pivot) {
i++;
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
int temp = arr[i + 1];
arr[i + 1] = arr[high];
arr[high] = temp;
return (i + 1);
}
```
c语言4个数字大小排序
以下是使用C语言实现四个数字大小排序的示例代码:
```c
#include <stdio.h>
int main() {
int a, b, c, d, temp;
printf("请输入四个整数:\n");
scanf("%d%d%d%d", &a, &b, &c, &d);
if (a > b) {
temp = a;
a = b;
b = temp;
}
if (a > c) {
temp = a;
a = c;
c = temp;
}
if (a > d) {
temp = a;
a = d;
d = temp;
}
if (b > c) {
temp = b;
b = c;
c = temp;
}
if (b > d) {
temp = b;
b = d;
d = temp;
}
if (c > d) {
temp = c;
c = d;
d = temp;
}
printf("排序后的结果为:%d %d %d %d\n", a, b, c, d);
return 0;
}
```
首先,我们通过 `scanf` 函数从用户输入中获取四个整数。然后,我们使用多个 `if` 语句来比较四个数字的大小,并将它们按升序排列。最后,我们使用 `printf` 函数输出排序后的结果。
阅读全文