输入4个整数,要求按由小到大的顺序输出,得到正确结果后,修改程序使之按由大到小程序输出的代码,C语言
时间: 2024-10-18 17:10:57 浏览: 15
在C语言中,你可以通过创建一个函数并使用循环结构来实现这个功能。这里是一个简单的例子,首先展示如何按从小到大排序,然后提供修改后的代码使其按照从大到小排序:
```c
#include <stdio.h>
// 函数用于将四个整数从小到大排列
void sort_in_order(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;
}
}
}
}
// 主函数演示如何使用
int main() {
int numbers[4] = {5, 2, 8, 1};
int size = sizeof(numbers) / sizeof(numbers[0]);
printf("Numbers in ascending order: ");
for (int i = 0; i < size; i++) {
printf("%d ", numbers[i]);
}
// 输出排序后结果
sort_in_order(numbers, size);
printf("\nNumbers in descending order after modification: ");
for (int i = 0; i < size; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
```
对于按照从大到小排序,只需要稍微调整`sort_in_order`函数里的条件判断即可:
```c
void sort_descending_order(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;
}
}
}
}
```
现在,当你调用`sort_descending_order(numbers, size);`之后,数组就会按照降序排列。
阅读全文