输入三个数abc按从大到小的顺序排列用switch语句
时间: 2024-10-21 22:05:10 浏览: 39
列出ABC三个字母的全排列-vc++程序基础
在C语言中,使用 switch 语句通常用于基于某个固定变量(如枚举类型)的多项比较,而不是直接对数字大小进行排序。如果你想通过 switch 语句来排列数字,其实并不合适,因为 switch 更适合于确定性的情况。但如果你坚持要用 switch,可以考虑借助临时变量和一些额外的判断来进行间接排序,但这并不是最佳实践。
然而,更常规的做法是使用 if-else 或者数组比较来实现这个功能。下面是使用 if-else 来比较并交换三个数的例子,假设 a、b 和 c 已经输入:
```c
#include <stdio.h>
void sortNumbers(int a, int b, int c) {
if (a > b && a > c) { // 如果 a 最大
int temp = a;
a = b;
b = temp;
}
else if (b > a && b > c) { // 如果 b 最大
int temp = b;
b = c;
c = temp;
}
else if (c > a && c > b) { // 如果 c 最大
int temp = c;
c = b;
b = temp;
}
printf("Sorted numbers: %d, %d, %d\n", a, b, c);
}
int main() {
int abc[3]; // 假设用户输入了三个数
scanf("%d%d%d", &abc[0], &abc[1], &abc[2]);
sortNumbers(abc[0], abc[1], abc[2]);
return 0;
}
```
阅读全文