利用指针变量从键盘输入十个整数,并按选择法由小到大排序
时间: 2023-07-21 19:20:54 浏览: 105
输入10个数,然后按顺序排列
以下是使用C语言编写的程序,用于从键盘输入十个整数,并按选择法由小到大排序:
```c
#include <stdio.h>
void selection_sort(int *arr, int n);
int main() {
int arr[10];
printf("请输入十个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
selection_sort(arr, 10);
printf("排序后的结果为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
void selection_sort(int *arr, int n) {
for (int i = 0; i < n - 1; i++) {
int min_index = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[min_index]) {
min_index = j;
}
}
if (min_index != i) {
int temp = arr[i];
arr[i] = arr[min_index];
arr[min_index] = temp;
}
}
}
```
程序的思路是,先定义一个选择排序函数`selection_sort`,然后在主函数中从键盘输入十个整数,调用选择排序函数将其排序后输出。选择排序函数的实现是,首先从数组中选择一个最小元素,将其与数组的第一个元素交换位置,然后在剩下的元素中选择一个最小元素,将其与数组的第二个元素交换位置,以此类推,直到排序完成。在程序中,通过指针变量`arr`来实现数组的传递和修改。
阅读全文