找到三个数中的最大小者

发布时间 2023-11-18 14:09:56作者: codels

怎么找到三个数x, y, z中的最大者和最小者

可以使用三目运算符(条件运算符)
先让x和y比较,找到较大(小)者,将较大(小)者赋给x,
然后再和z比较,返回较大(小),即三个数中的最大(小)者

#include <stdio.h>
int max(int x, int y, int z);
int min(int x, int y, int z);
int main(void)
{
    int x, y, z;
    scanf("%d%d%d", &x, &y, &z);        //输入三个数

    printf("Max is %d\n", max(x, y, z));
    printf("Min is %d\n", min(x, y, z));

    return 0;
}

int max(int x, int y, int z)
{
    x = x < y ? y : x;      //将较大值赋给x
    x = x < z ? z : x;      //作用同上句
    
    return x;
}
int min(int x, int y, int z)
{
    x = x > y ? y : x;      //将较小者赋给x
    x = x > z ? z : x;

    return x;
}