代码运行时,输入的数字之间加了逗号,还是一直输出第一个数

代码运行时,输入的数字之间加了逗号,还是一直输出第一个数

问题描述:

#include<stdio.h>
int main()
{
int max(int x,int y,int z);
int a,b,c,f;
scanf("%d,%d,%d",&a,&b,&c);
f=max(a,b,c);
printf("max=%d\n",f);
return 0;
}
int max(int x,int y,int z)
{
int e;
if(z<x<y)e=y;
if(z<y<x)e=x;
else e=z;
return(e);
}

你调用max方法前输出a,b,c的值就知道了。
你max方法逻辑不对。
如有帮助,望点击我回答右上角【采纳】按钮支持一下。

int max(int x,int y,int z){
    int e;
    if(y>x) e=y;
    else  e=x;    
    if(z>e) e=z;
    return e;
}

求三个数的最大值,可以使用嵌套函数,如下:

int max(int x,int y)
{
    if(x>y)
      return x;
    return y;
}

int main()
{
    int a,b,c,f;
    scanf("%d%d%d",&a,&b,&c);
    f = max(a,max(b,c));
    printf("max=%d\n",f);
    return 0;
}