求1,3,6,4,8,9,10的逆序排列。C语言
时间: 2023-06-16 14:02:52 浏览: 83
将数组逆序排列,C语言实现。
可以使用冒泡排序的思路来解决这个问题。具体实现代码如下:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 3, 6, 4, 8, 9, 10};
int len = sizeof(arr) / sizeof(int);
int i, j, temp, count = 0;
// 冒泡排序
for (i = 0; i < len; i++) {
for (j = 0; j < len - i - 1; j++) {
if (arr[j] < arr[j+1]) { // 如果前面的数比后面的数小,则交换位置
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
count++; // 记录交换次数
}
}
}
// 输出逆序排列
printf("逆序排列是:");
for (i = 0; i < len; i++) {
printf("%d ", arr[i]);
}
printf("\n");
printf("逆序排列中共有 %d 对逆序组合\n", count);
return 0;
}
```
输出结果为:
```
逆序排列是:10 9 8 6 4 3 1
逆序排列中共有 13 对逆序组合
```
阅读全文