Code Bye

最大公约数 最小公倍数问题,用函数写

#include<stdio.h>
int main()
{
int yshu(int,int);
int bshu(int,int,int);
int a,b;
int m,n;
scanf(“%d %d”,&a,&b);
m=yshu(a,b);
n=bshu(a,b,m);
printf(“%d\n”,m);
printf(“%d\n”,n);
return 0;
}
int yshu(int a,int b)
{
int c,t;
if(a<b)
{
t=a;
a=b;
b=c;
}
while(b!=0)
{
c=a%b;
a=b;
b=c;
}
return a;
}
int bshu(int a,int b,int m)
{
return (a*b/m);
}
为什么不对啊  哪里错了
解决方案

20

你代码这里c应该改成t吧
t=a;
a=b;
b=c;

40

#include<stdio.h>
int main()
{
    int yshu(int,int);
    int bshu(int,int,int);
    int a,b;
    int m,n;
    scanf("%d %d",&a,&b);
    m=yshu(a,b);
    n=bshu(a,b,m);
    printf("%d\n",m);
    printf("%d\n",n);
    return 0;
}
int yshu(int a,int b)
{
    int c,t;
    if(a<b)
    {
        t=a;
        a=b;
        b=t;
    }
    while(b!=0)
    {
        c=a%b;
        a=b;
        b=c;
    }
    return a;
}
int bshu(int a,int b,int m)
{
    return (a*b/m);
}

单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明最大公约数 最小公倍数问题,用函数写