在Dev C++中用C语言实现选择,输入任意十个数数后,能按从大到小排列
时间: 2024-12-08 15:16:27 浏览: 9
C语言期末大作业之图书信息管理系统实现-基于Dev-C++实现.zip
在Dev C++ 中使用C语言实现选择排序算法可以让你对输入的十个整数进行从大到小的排序。以下是简单的步骤和代码示例:
首先,你需要包含头文件`stdio.h`用于输入和输出,并编写一个主函数`main()`。
```c
#include <stdio.h>
// 定义交换两个元素的函数
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 选择排序函数
void selectionSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
// 找到剩余部分的最大值
int max_idx = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] > arr[max_idx]) {
max_idx = j;
}
}
// 将找到的最大值与当前未排序部分的第一个元素交换位置
swap(&arr[i], &arr[max_idx]);
}
}
int main() {
int numbers[10];
printf("请输入10个数字:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &numbers[i]);
}
// 先存储原始数组
int original[] = {numbers[0], numbers[1], numbers[2], numbers[3], numbers[4],
numbers[5], numbers[6], numbers[7], numbers[8], numbers[9]};
// 对数组进行排序
selectionSort(numbers, 10);
printf("\n从大到小排序后的结果是:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", numbers[i]);
}
// 检查排序是否正确,显示原始数组
printf("\n原始数组(未排序):\n");
for (int i = 0; i < 10; i++) {
printf("%d ", original[i]);
}
return 0;
}
```
当你运行这个程序,它会提示用户输入十个数字,然后按照从大到小的顺序打印出排序后的结果,最后还会展示原始的未排序数组以供比较。
阅读全文