int p[2];
while(cin >> a>>b) {
p = {b,a};
max = p[a>b];
min = p[a<b];
printf("max=%d min=%d\n",max,min);
}
根据1L消息:
不使用大小于。
利用 max = (|a-b| + a+ b)/2 。因为|a-b|在用函数实现时底部也是使用了大小于,所以改用平方再开方的形式。
感谢1L提供。
如若有错,还请各位看官明察。
while(scanf("%d%d",&a,&b)){
k = a - b;
k *= k;
k = sqrt(k);
max = (k + a + b)>>1;
min = (a + b - k)>>1;
printf("max = %d, min = %d\n",max,min);
}