如何不进行逻辑判断,输出两个数之间比较大的那个数字,不能使用if,三目运算符等方法。
方法如下:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=10;
int b=20;
printf("%d",((a+b)+abs(a-b))/2);
return 0;
}
代码很简单,原理也很简单,abs(a-b)结果为a与b之间的差值,如此一来不管谁大谁小,(a+b)+abs(a-b)一定是等于a与b之间比较大的数字的两倍,除以2当然就是比较大的数值了。