题目:求两个数a、b之间较大的数,不使用if、while、switch、for、?:/以及任何比较语句
#include <stdio.h>
int min(int a, int b)
{
int d = a - b;
int flag = ((unsigned int)d) >> 31;
int array[] = {b, a};
return array[flag];
}
int main(int argc, char *argv[])
{
int i_min, a, b;
scanf("%d %d",&a,&b);
i_min = min(a,b);
printf("%d\n",i_min);
return 0;
}
输出: