不用判断语句,求两个数的最大值
我面试时的一道题,当时没有解决,现在总算是知道了,呵呵
#include "stdio.h"
int max(int x,int y)
{
int buf[2]={x,y};
unsigned int z;
z=x-y;
z = z>>31;
return buf[z];
}
void main(void)
{
int ma;
ma=max(2,-1);
printf("max=%d\n",ma);
}
我面试时的一道题,当时没有解决,现在总算是知道了,呵呵
#include "stdio.h"
int max(int x,int y)
{
int buf[2]={x,y};
unsigned int z;
z=x-y;
z = z>>31;
return buf[z];
}
void main(void)
{
int ma;
ma=max(2,-1);
printf("max=%d\n",ma);
}
转载于:https://www.cnblogs.com/mushroom_lb/archive/2009/11/30/1613838.html