第k轮选择法排序c语言
时间: 2024-01-15 08:17:42 浏览: 30
以下是第k轮选择法排序的C语言代码实现:
```c
#include <stdio.h>
void selectionSort(int arr[], int n, int k) {
for (int i = 0; i < k; i++) {
int minIndex = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
int temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
int main() {
int n, k;
scanf("%d %d", &n, &k);
int arr[n];
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
selectionSort(arr, n, k);
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
相关问题
c语言选择法排序10个数
以下是使用C语言实现选择法排序10个数的代码:
```c
#include <stdio.h>
int main() {
int i, j, k, m;
int a[10];
printf("请输入十个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &a[i]); // 用scanf输入数组
}
printf("\n");
for (i = 0; i < 10; i++) {
k = i; // 假设初始值为最大值
for (j = i + 1; j < 10; j++) {
if (a[j] > a[k]) {
k = j; // 求出每一轮比较的最大值
}
}
if (k != i) {
m = a[i];
a[i] = a[k];
a[k] = m; // a[i]和a[k]数值互换,使得该轮比较后a[i]为最大值
}
}
printf("用选择法对十个整数从大到小排序结果为:\n");
for (i = 0; i < 10; i++) {
printf("%5d", a[i]);
}
printf("\n");
return 0;
}
```
C语言用选择法对10个整数排序
以下是C语言用选择法对10个整数排序的代码实现:
```c
#include <stdio.h>
void sort(int b[10], int n) {
int i, j, k, m;
for (i = 0; i < n; i++) {
k = i; // 假设初始值为最大值
for (j = i + 1; j < n; j++) {
if (b[j] > b[k]) k = j; // 求出每一轮比较的最大值
}
if (k != i) {
m = b[i];
b[i] = b[k];
b[k] = m; // b[i]和b[k]数值互换,使得该轮比较后b[i]为最大值
}
}
}
int main() {
int i, a[10];
printf("请输入十个整数:\n");
for (i = 0; i < 10; i++) scanf("%d", &a[i]); // 用scanf输入数组
sort(a, 10); // 调用排序函数
printf("用选择法对十个整数从大到小排序结果为:\n");
for (i = 0; i < 10; i++) printf("%5d", a[i]);
printf("\n");
return 0;
}
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)