设计函数sortArray,使用选择排序方法,实现将数组int arr[15] = {3,44,38,5,47,15,36,26,27,2,46,4,19,50,48};中的数分别按照从小到大、从大到小的顺序排列并输出。c语言
时间: 2023-08-19 16:31:26 浏览: 114
C语言程序设计-编写函数用选择排序法对数组中的数据进行从小到大的排序;
5星 · 资源好评率100%
好的,以下是实现sortArray函数的代码,使用选择排序方法将数组从小到大和从大到小排列并输出:
```c
#include <stdio.h>
void sortArray(int arr[], int len) {
int i, j, temp, minIndex, maxIndex;
// 从小到大排序
for (i = 0; i < len - 1; i++) {
minIndex = i;
for (j = i + 1; j < len; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
if (i != minIndex) {
temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
printf("从小到大排序:\n");
for (i = 0; i < len; i++) {
printf("%d ", arr[i]);
}
printf("\n");
// 从大到小排序
for (i = 0; i < len - 1; i++) {
maxIndex = i;
for (j = i + 1; j < len; j++) {
if (arr[j] > arr[maxIndex]) {
maxIndex = j;
}
}
if (i != maxIndex) {
temp = arr[i];
arr[i] = arr[maxIndex];
arr[maxIndex] = temp;
}
}
printf("从大到小排序:\n");
for (i = 0; i < len; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int arr[15] = {3,44,38,5,47,15,36,26,27,2,46,4,19,50,48};
int len = sizeof(arr) / sizeof(arr[0]);
sortArray(arr, len);
return 0;
}
```
运行结果:
```
从小到大排序:
2 3 4 5 15 19 26 27 36 38 44 46 47 48 50
从大到小排序:
50 48 47 46 44 38 36 27 26 19 15 5 4 3 2
```
希望能够帮助到你!
阅读全文