c语言三个数求中间值
在C语言中,可以使用以下两种方法求三个数的中间值:
1. 使用三目运算符:int getSecond(int a, int b, int c) {
return a > b ? (b > c ? b : (a > c ? c : a)) : (a > c ? a : (b > c ? c : a));
}
2. 使用循环语句:int getSecond(int a, int b, int c) {
int max = a > b ? a : b;
max = max > c ? max : c;
int min = a < b ? a : b;
min = min < c ? min : c;
int second = a + b + c - max - min;
return second;
}
需要注意的是,这两种方法都需要对三个数进行排序,以确定中间值。如果输入的数很多,可以使用二叉堆等数据结构进行优化。