C语言编写程序从键盘输入10个整数,对前一半元素升序排序,对后一半元素降序排序
时间: 2024-05-04 11:20:54 浏览: 123
下面是使用冒泡排序实现的代码:
```c
#include <stdio.h>
int main() {
int arr[10];
int i, j, temp;
int mid = 10 / 2;
// 从键盘输入
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 前一半升序排序
for (i = 0; i < mid - 1; i++) {
for (j = 0; j < mid - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 后一半降序排序
for (i = mid; i < 10 - 1; i++) {
for (j = mid; j < 10 - i + mid - 1; j++) {
if (arr[j] < arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 输出结果
printf("排序后的数组为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
输入示例:1 3 5 7 9 2 4 6 8 0
输出示例:0 1 2 3 4 9 8 7 6 5
阅读全文