编程题:从终端输入10个数字(乱序),利用简单选择排序法对这10个数字排序,结果从小到大排列
时间: 2024-04-06 19:33:19 浏览: 90
好的,以下是实现简单选择排序的 Python 代码:
```python
# 从终端输入10个数字
nums = []
for i in range(10):
num = int(input("请输入第%d个数字:" % (i + 1)))
nums.append(num)
# 简单选择排序
for i in range(9):
min_index = i
for j in range(i + 1, 10):
if nums[j] < nums[min_index]:
min_index = j
nums[i], nums[min_index] = nums[min_index], nums[i]
# 输出排序后的结果
print("排序后的结果是:", nums)
```
运行结果如下:
```
请输入第1个数字:5
请输入第2个数字:8
请输入第3个数字:1
请输入第4个数字:3
请输入第5个数字:6
请输入第6个数字:2
请输入第7个数字:4
请输入第8个数字:9
请输入第9个数字:7
请输入第10个数字:0
排序后的结果是: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
```
希望能对你有所帮助!
相关问题
编程题:从终端输入10个数字(乱序),利用简单选择排序法对这10个数字排序,结果从小到大排列 C语言
好的,以下是实现简单选择排序的 C 语言代码:
```c
#include <stdio.h>
int main() {
int nums[10]; // 存储输入的数字
int i, j, min_index, temp;
// 从终端输入10个数字
printf("请输入10个数字:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &nums[i]);
}
// 简单选择排序
for (i = 0; i < 9; i++) {
min_index = i;
for (j = i + 1; j < 10; j++) {
if (nums[j] < nums[min_index]) {
min_index = j;
}
}
temp = nums[i];
nums[i] = nums[min_index];
nums[min_index] = temp;
}
// 输出排序后的结果
printf("排序后的结果是:\n");
for (i = 0; i < 10; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
```
运行结果如下:
```
请输入10个数字:
5 8 1 3 6 2 4 9 7 0
排序后的结果是:
0 1 2 3 4 5 6 7 8 9
```
希望能对你有所帮助!
编程题:从终端输入10个数字(乱序),利用冒泡排序法对这10个数字排序,结果从小到大排列
下面是使用冒泡排序算法对输入的10个数字进行排序的 C 语言程序:
```
#include <stdio.h>
int main() {
int a[10], i, j, temp;
printf("请输入10个数字:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
for (i = 0; i < 9; i++) {
for (j = 0; j < 9 - i; j++) {
if (a[j] > a[j + 1]) {
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
printf("排序结果如下:\n");
for (i = 0; i < 10; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
冒泡排序算法的基本思想是将相邻的两个元素进行比较,如果它们的顺序不对就交换它们的位置,这样一趟下来,最大的元素就会被移动到最后一个位置上。然后再从头开始进行相邻元素的比较和交换,直到所有元素都排好序为止。
阅读全文