C语言的问题(2)

来源:百度知道 编辑:UC知道 时间:2024/06/23 13:36:51
int divisor(int a,int b);
{int r;
while((r=a%b)!=0)
{a=b;b=r;}
return b;
}
int multiple(int a,int b)
{int d;
d=divisor(a,b);
return a*b/d;
}
void main()
{int a,b,c,e;
printf("input a b:");
scanf("%d%d",&a,&b);
c=divisor(a,b);
printf("c=%d\n",c);
}
当我的按照教科书上输入这个程序,运行出显declaration syntax error.
是什么意思?
程序错了?错在哪?
int divisor(int a,int b);
{int r;
while((r=a%b)!=0)
{a=b;b=r;}
return b;
}
int multiple(int a,int b)
{int d;
d=divisor(a,b);
return a*b/d;
}
void main()
{int a,b,c;
printf("input a b:");
scanf("%d%d",&a,&b);
c=multiple(a,b);
printf("c=%d\n",c);
}
之前的是我作了些改动.对不起,
这个才是正版.但问题还是一样!

int divisor(int a,int b); //你是解释函数,又不是声明函数原形。。。把“;”去了就行了
// int divisor(int a,int b) 如此改动
{int r;
while((r=a%b)!=0)
{a=b;b=r;}
return b;
}
int multiple(int a,int b)
{int d;
d=divisor(a,b);
return a*b/d;
}
void main()
{int a,b,c;
printf("input a b:");
scanf("%d%d",&a,&b);
c=multiple(a,b);
printf("c=%d\n",c);
}

int divisor(int a,int b) 如此改动
{int r;
while((r=a%b)!=0)
{a=b;b=r;}
return b;
}
int multiple(int a,int b)
{int d;
d=divisor(a,b);
return a*b/d;
}
void main()
{int a,b,c;
printf("input a b:");
scanf("%d%d",&a,&b);
c=multiple(a,b);
printf("c=%d\n",c);
}

declaration syntax error.
的意思是语法错误。
SYNTAX是语法的意思啊。
我帮你看了看
int r;
while((r=a%b)!=0)
{a=b;b=r;}
return b;