C语言三个数比大小,按降序输出
时间: 2024-12-08 12:17:48 浏览: 12
在C语言中,如果你想比较三个数并按照降序输出,你可以创建一个函数,例如`compare_and_sort`,它接受三个整数作为输入,然后通过嵌套if-else结构或三元运算符来确定最大值,并依次找出第二、第三大的数。这里是一个简单的示例:
```c
#include <stdio.h>
int compare_and_sort(int a, int b, int c) {
// 按降序排序
if (a > b && a > c) {
return a;
} else if (b > a && b > c) {
return b;
}
return c; // 如果前两个条件都不满足,说明c是最大的
}
int main() {
int num1, num2, num3;
printf("请输入三个整数:");
scanf("%d %d %d", &num1, &num2, &num3);
int max = compare_and_sort(num1, num2, num3);
printf("最大值是:%d\n", max);
// 排除已知的最大值,继续找出第二大的
if (num1 != max) {
int second_max = num1 == num2 ? num2 : num1;
printf("第二大值是:%d\n", second_max);
}
if (num2 != max && num2 != second_max) {
printf("第三大值是:%d\n", num2);
}
return 0;
}
```
在这个程序中,用户会先输入三个数字,然后`main`函数调用`compare_and_sort`函数找出最大值,并打印出来。接下来排除这个最大值,找到剩下的两个数中的较大者,如果还有两个相同的数值,则取其中一个作为第二大的。
阅读全文