int max2(inta,intb);不是比的ab吗?再上一个函数中怎么比的max2a,c,d啊

#include
int main()
{
    int max4(int a,int b,int c,int d);
    int a,b,c,d,max;
    printf("please enter4 interger numbers:");
    scanf("%d %d %d %D",&a,&b,&c,&d);
    max=max4(a,b,c,d);
    printf("max=%d\n",max);
    return 0;
} 
    int max4(int a,int b,int c,int d)
    {
        int max2(int a,int b);
        int m;
        m=max2(max2(max2(a,b),c),d);
    }
        int max2(int a,int b)
        {
            return (a>=b?a:b);
        }

这是嵌套调用啊
max2(a,b)调用max2函数,获得a和b之间的较大值,假设为k;然后再调用max2(k,c),得到较大值,再与d获得较大值,从而得到a,b,c,d中的最大值