请各位大神帮我看看在vc6.0这哪错了 c语言的

#include
int leap(int a)

int number(int year,int m, int d)
//闰年条件能被4、400整除不能被100
void main()
{
int year,month,day,n;
printf("请输入年月日\n");
sacanf("%d,%d,%d",&year,&month,&day);
n=number(year,month,day);
printf("%d\n",n);
}
int leap(int a)
{
if(a%4==0&&a%100!=0||a%400==0)
return 1;
else
return 0;
}
int number(int year,int m,int d)
{
int sum=0,i;
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};

int b[12]={31,29,31,30,31,30,31,31,30,31,30,31};

if(leap(year)==1)
for(i=0; i<m-1; i++)
sum+=b[i];
else
for(i=0;i<m-1;i++)
sum+=a[i];
sum+=d;
return sum;
}

好多地方缺少分号,再就是if判断闰年逻辑中&&优先级大于||的

1.include没保护文件。
2.函数原型后要加分号。
3.sacanf()这是不是打错?
没看你逻辑,就看了一下格式。

int leap(int a)
int number(int year,int m, int d)
这两句少分号

我试了下,把include头文件正确写出来
#include
函数声明两处:int leap(int a)
int number(int year,int m, int d)加上分号,
以及sacanf()改为scanf()是可以编译通过的