用C语言写输入四个整数由小到大排序
时间: 2023-07-01 20:15:14 浏览: 100
C语言实验-输入4个整数,要求按由小到大(或由大到小)顺序输出。
5星 · 资源好评率100%
可以使用冒泡排序或选择排序来实现,下面是两种方法的示例代码:
1. 冒泡排序法
```c
#include <stdio.h>
void main() {
int nums[4];
printf("请输入4个整数:\n");
for (int i = 0; i < 4; i++) {
scanf("%d", &nums[i]);
}
// 冒泡排序
for (int i = 0; i < 4 - 1; i++) {
for (int j = 0; j < 4 - 1 - i; j++) {
if (nums[j] > nums[j + 1]) {
int temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
printf("排序后的结果为:\n");
for (int i = 0; i < 4; i++) {
printf("%d ", nums[i]);
}
}
```
2. 选择排序法
```c
#include <stdio.h>
void main() {
int nums[4];
printf("请输入4个整数:\n");
for (int i = 0; i < 4; i++) {
scanf("%d", &nums[i]);
}
// 选择排序
for (int i = 0; i < 4 - 1; i++) {
int min = i;
for (int j = i + 1; j < 4; j++) {
if (nums[j] < nums[min]) {
min = j;
}
}
if (min != i) {
int temp = nums[i];
nums[i] = nums[min];
nums[min] = temp;
}
}
printf("排序后的结果为:\n");
for (int i = 0; i < 4; i++) {
printf("%d ", nums[i]);
}
}
```
两种方法的时间复杂度都是 O(n^2),但对于只有 4 个元素的数组来说,性能上没有太大区别。
阅读全文