我想知道我的代码有哪些没完善,刚学函数,有些不太懂,不用函数会做,但是用函数就不明白了
#include<stdio.h>
int fun(int x,int y){
int z=0,i=0,s=0;
z=x<y?x:y;
for(i=1;i<=x;i++)
{
if(x%i==0&&y%i==0)
s=i;}
return fun(x,x*y/s);
}
main()
{
int a,b;
scanf("%d%d",&a,&b);
printf("%d",fun(a,b));
}
我想知道我的代码有哪些没完善,刚学函数,有些不太懂,不用函数会做,但是用函数就不明白了
#include<stdio.h>
int fun(int x,int y){
int z=0,i=0,s=0;
z=x<y?x:y;
for(i=1;i<=x;i++)
{
if(x%i==0&&y%i==0)
s=i;}
return fun(x,x*y/s);
}
main()
{
int a,b;
scanf("%d%d",&a,&b);
printf("%d",fun(a,b));
}
建议一边运行一边调试。
如果函数fun当中的s是你所求的最大公因数那么fun的返回值就是s。
此外注意main的格式,建议前面加上int并在最后return 0