输入四个整数,从小到大排序
时间: 2024-05-12 21:20:08 浏览: 54
以下为Python代码实现:
```python
a, b, c, d = map(int, input().split())
lst = [a, b, c, d]
lst.sort()
print(lst)
```
输入示例:
```
3 1 4 2
```
输出结果:
```
[1, 2, 3, 4]
```
说明:输入的四个整数为 3、1、4、2,程序将它们存入列表 lst 中,并使用 sort() 方法进行排序,最后输出排序后的结果。
相关问题
C语言,运用指针变量,输入四个整数从小到大排序
可以使用指针变量来实现从小到大排序。具体实现步骤如下:
1. 定义一个指针数组,用于存放四个整数的地址;
2. 使用 scanf() 函数分别输入四个整数,并将它们的地址存入指针数组中;
3. 使用冒泡排序法对四个整数进行排序,可以使用指针变量交换两个数的值;
4. 输出排序后的四个整数。
下面是具体的代码实现:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int a, b, c, d;
int *p[4] = { &a, &b, &c, &d }; // 定义指针数组
printf("请输入四个整数:\n");
scanf("%d%d%d%d", p[0], p[1], p[2], p[3]); // 输入四个整数
// 冒泡排序
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3 - i; j++) {
if (*p[j] > *p[j + 1]) {
swap(p[j], p[j + 1]); // 交换两个数的值
}
}
}
// 输出排序后的四个整数
printf("从小到大排序后的结果为:%d %d %d %d\n", a, b, c, d);
return 0;
}
```
注意,这里使用指针数组来存放四个整数的地址,是为了方便进行排序和输出。在冒泡排序中,通过比较和交换指针变量所指向的值,来实现排序。最后,输出排序后的四个整数即可。
c语言,输入四个整数 从小到大排序,不要用交换法
首先,让我来介绍一下C知道。C知道是一款由CSDN开发的人工智能应用程序,它可以帮助用户解决各种与C语言开发相关的问题。作为C知道的AI,我非常乐意为你解答C语言相关的问题。
回到你的问题,如何用C语言输入四个整数,从小到大排序,却不用交换法呢?我们可以使用选择排序算法来解决这个问题。选择排序是一种简单直接的排序算法,其基本思想是每一次从待排序的数据元素中选出最小(或者最大)的一个元素,存放到序列的起始位置。然后再从剩余的未排序的元素中寻找最小(或者最大)的元素,然后放到已排序序列的末尾。以此类推,最终排序完成。
以下是使用选择排序算法对四个整数进行排序的C语言代码:
```
#include <stdio.h>
void selection_sort(int arr[], int n)
{
int i, j, min_idx, temp;
for (i = 0; i < n-1; i++)
{
min_idx = i;
for (j = i+1; j < n; j++)
{
if (arr[j] < arr[min_idx])
min_idx = j;
}
temp = arr[min_idx];
arr[min_idx] = arr[i];
arr[i] = temp;
}
}
int main()
{
int arr[4], i;
printf("请输入四个整数:\n");
for (i = 0; i < 4; i++)
{
scanf("%d", &arr[i]);
}
selection_sort(arr, 4);
printf("从小到大排序的结果为:");
for (i = 0; i < 4; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
在这个代码中,我们定义了一个名为selection_sort的函数来实现选择排序算法。它接受一个整型数组arr和数组长度n作为参数,对arr中的元素进行从小到大的排序。我们还定义了一个main函数用于输入四个整数,并调用selection_sort函数进行排序。
需要注意的是,在这里我们并没有使用交换法来进行排序。而是使用了一个额外的变量temp来储存最小值,然后通过赋值的方式将当前最小值和外层循环(已排好序)的最右边的元素进行交换,以此达到从小到大排序的目的。
希望我的回答能够帮到你,如果你还有其他问题,可以直接向我提问。
阅读全文