如何用C语言编写一个函数,实现将三个数按照从大到小的顺序排序?
时间: 2024-11-20 17:38:53 浏览: 10
C语言程序设计-编写函数实现两个数据的交换,在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序;.c
5星 · 资源好评率100%
在C语言中,你可以使用冒泡排序算法来实现这个功能。以下是简单的示例:
```c
#include <stdio.h>
// 定义一个交换两个整数的辅助函数
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 冒泡排序函数,接受三个整数作为参数
void sort_descending(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] < arr[j + 1]) { // 如果前一个元素小于后一个元素
swap(&arr[j], &arr[j + 1]); // 交换它们的位置
}
}
}
}
// 测试函数
int main() {
int numbers[3] = {5, 2, 8}; // 待排序的数组
int length = sizeof(numbers) / sizeof(numbers[0]);
printf("Before sorting:\n");
for (int i = 0; i < length; i++) {
printf("%d ", numbers[i]);
}
sort_descending(numbers, length);
printf("\nAfter sorting in descending order:\n");
for (int i = 0; i < length; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
```
当你运行这个程序,它会打印出原始数组和经过排序后的数组,按从大到小的顺序。
阅读全文