为什么编译的时候没错 组建的时候有错啊?

img

#include<stdio.h>
int main()
{
int max,a[10];
for(int i=0;i<10;i++)
scanf("%d",&a[i]);
max = a[0];//要在数组已经赋完值以后在将a[0]赋值给max,在一开始就赋值,a[0]内是随机数
for(int i=0;i<10;i++)
{
if(max<a[i])
max=a[i];
}
printf("最高分为%d\n",max);
}


#include<stdio.h>
void main()
{
    int max,a[10];
    
    for(int i=0;i<10;i++){
        scanf("%d",&a[i]);
    }
    max = a[0];
    for(int i=0;i<10;i++){
        if(max<a[i])
            max=a[i];
    }
    printf("%d",max);
}