想输出最大值和最小值,但最小值一直输出为0,改后又会全输出最大值

#include
int main()
{
    int n,i,a,max,min;
    scanf("%d",&n);
    max=a;
    min=a;
    for(i=1;i<=n;i++)
    {
    scanf("%d",&a);
    if(maxif(min>a)
    {
        min=a;
    }    
}
    printf("%d %d",max,min);
    return 0;
}


a还没赋值你不能将max和min等于a

#include<stdio.h>
int main()
{
    int n,i,a,max,min;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
    scanf("%d",&a);
    if(i==1 || max<a)
    {    max=a;
    }
    if(i==1 || min>a)
    {
        min=a;
    }    
}
    printf("%d %d",max,min);
    return 0;
}
 
 

#include <stdio.h>

int main()
{

    int n,i,a,max,min;
    scanf("%d",&n);
    max=0;
    min=0;
    for(i=1;i<=n;i++)
    {
        scanf("%d",&a);
        if(max<a)
        {    max=a;
        }
        if(i==1 || min>a)
        {
            min=a;
        }
    }
    printf("%d %d",max,min);
    return 0;
}