max函数比较两数的大小为什么输出的是第一个数?

#include<stdio.h>
max(int x,int y);
main()
{
    int a,b,c;
    scanf("%d%d",&a,&b);
    c=max(a,b);

}

max(int x,int y){
    int z;
    z=x>y?x:y;
printf("max is%d",z);
}
 

你的代码不标准。用我这个代码试试 

#include <stdio.h>

int max(int x,int y);
int main()
{
    int a,b,c;
    scanf("%d%d",&a,&b);
    c=max(a,b);
    return 0;
}

int max(int x,int y){
    int z;
    z=x>y?x:y;
    printf("max is%d",z);
    return z;
}

 

比较大小,那当然可能是第一个数或者第二个数,题主的意思是一直都是第一个数?

比较大小,那当然可能是第一个数或者第二个数,题主的意思是一直都是第一个数?你的代码也有问题

输出8.没有问题啊

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632