用stdio.h打出输入4个整数,从小到大排序的代码
时间: 2024-05-13 09:20:36 浏览: 74
以下是C语言代码:
```c
#include <stdio.h>
int main() {
int a, b, c, d;
scanf("%d%d%d%d", &a, &b, &c, &d);
// 冒泡排序
int temp;
if (a > b) {
temp = a;
a = b;
b = temp;
}
if (a > c) {
temp = a;
a = c;
c = temp;
}
if (a > d) {
temp = a;
a = d;
d = temp;
}
if (b > c) {
temp = b;
b = c;
c = temp;
}
if (b > d) {
temp = b;
b = d;
d = temp;
}
if (c > d) {
temp = c;
c = d;
d = temp;
}
printf("%d %d %d %d\n", a, b, c, d);
return 0;
}
```
思路:先输入4个整数,然后使用冒泡排序的方法,比较大小并交换位置,最终输出结果。
相关问题
打出输入4个整数,从小到大排序的c语言代码
以下是一个简单的C语言代码,用于输入4个整数并按从小到大的顺序排序。
```
#include <stdio.h>
int main() {
int a, b, c, d;
int temp;
printf("请输入4个整数:\n");
scanf("%d%d%d%d", &a, &b, &c, &d);
if (a > b) {
temp = a;
a = b;
b = temp;
}
if (a > c) {
temp = a;
a = c;
c = temp;
}
if (a > d) {
temp = a;
a = d;
d = temp;
}
if (b > c) {
temp = b;
b = c;
c = temp;
}
if (b > d) {
temp = b;
b = d;
d = temp;
}
if (c > d) {
temp = c;
c = d;
d = temp;
}
printf("从小到大排序后的结果为:%d %d %d %d\n", a, b, c, d);
return 0;
}
```
在这个程序中,我们首先声明了4个整数变量a、b、c和d,以及一个用于交换变量值的临时变量temp。
然后,我们使用scanf()函数从用户输入中读取4个整数,并将它们存储在变量a、b、c和d中。
接下来,我们使用一系列if语句以从小到大的顺序对这些变量进行排序。在每个if语句中,我们检查两个变量的值,并在必要时交换它们的位置。
最后,我们使用printf()函数将排序后的结果打印出来。
请注意,在实际的程序中,您可能需要添加一些错误检查和边界条件来确保程序的正确性和健壮性。
c语言10个整数从小到大排序用选择法
在 C 语言中,使用选择排序算法对 10 个整数从小到大进行排序,可以按照以下步骤进行:
1. 初始化:首先,我们需要一个包含 10 个整数的一维数组,并设置一个标志,表示未找到最小元素的位置(假设数组名为 `nums`,索引从 0 开始)。
2. 遍历数组:每次遍历数组,查找当前未排序部分内的最小元素。通过两层循环完成这个过程,外层循环控制未排序部分的起点,内层循环比较每个元素找到最小值。
3. 找到最小元素:在内层循环中,如果找到比已知最小值更小的元素,就更新最小值及其位置。
4. 交换元素:将找到的最小元素与未排序部分的第一个元素交换,这一步完成了这一轮的“选择”操作。
5. 更新范围:外层循环结束后,未排序部分会向前移动一位,因为已经将最小值放到了正确的位置。
6. 重复直到有序:继续上述步骤,直到整个数组都被遍历并排序完毕。
以下是简单的 C 代码示例:
```c
#include <stdio.h>
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;
}
}
// 交换找到的最小值
int temp = arr[i];
arr[i] = arr[min_index];
arr[min_index] = temp;
}
}
// 测试函数
int main() {
int nums[10] = {5, 3, 8, 1, 9, 2, 7, 4, 6, 0};
int n = sizeof(nums) / sizeof(nums[0]);
printf("Before sorting:\n");
for (int i = 0; i < n; i++) {
printf("%d ", nums[i]);
}
selection_sort(nums, n);
printf("\nAfter sorting (ascending):\n");
for (int i = 0; i < n; i++) {
printf("%d ", nums[i]);
}
return 0;
}
```
当你运行这个程序,它会打印出排序后的结果。
阅读全文