C语言按从大到小排序三个数 从键盘输入三个数,将它们按从大到小进行排序,然后输出。
时间: 2024-09-19 19:07:50 浏览: 32
在C语言中,你可以使用冒泡排序算法来实现这个功能。这是一个简单的步骤:
```c
#include <stdio.h>
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] < arr[j + 1]) {
// 交换元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int a, b, c;
printf("请输入三个整数:\n");
scanf("%d %d %d", &a, &b, &c);
bubbleSort(&a, 1); // 先对第一个数排序
bubbleSort(&b, 1); // 再对第二个数排序
bubbleSort(&c, 1); // 最后对第三个数排序
printf("按照从大到小排序后的结果是:%d %d %d\n", a, b, c);
return 0;
}
```
在这个程序中,我们首先读取用户输入的三个数,然后分别对每个数进行一次冒泡排序。最后,我们打印出排好序的数字。
相关问题
c语言从键盘输入三个数,从大到小排序
在C语言中,你可以使用标准库函数`scanf`从键盘获取三个整数,并通过循环结构以及条件语句对它们进行比较和排序。以下是一个简单的示例程序:
```c
#include <stdio.h>
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int num1, num2, num3;
printf("请输入三个整数: ");
scanf("%d %d %d", &num1, &num2, &num3);
// 检查是否需要交换
if (num1 > num2) {
swap(&num1, &num2);
}
if (num2 > num3) {
swap(&num2, &num3);
}
if (num1 > num2) {
swap(&num1, &num2); // 再次检查是否需要交换,因为之前可能已经进行了多次交换
}
printf("按从大到小排序后的结果是: %d, %d, %d\n", num1, num2, num3);
return 0;
}
```
这个程序首先获取三个数字,然后逐一对它们进行比较,如果发现当前数字大于下一个,则交换它们的位置。最后输出排序后的结果。
c语言从键盘输入三个数,按从大到小的顺序输出
可以使用冒泡排序算法来实现这个功能,具体代码如下:
```c
#include <stdio.h>
int main() {
int a, b, c, temp;
printf("请输入三个数:\n");
scanf("%d %d %d", &a, &b, &c);
if (a < b) {
temp = a;
a = b;
b = temp;
}
if (a < c) {
temp = a;
a = c;
c = temp;
}
if (b < c) {
temp = b;
b = c;
c = temp;
}
printf("从大到小的顺序是:%d %d %d\n", a, b, c);
return 0;
}
```
这个程序会从键盘输入三个数,然后使用三次 if 语句来比较它们的大小,最终输出从大到小的顺序。
阅读全文