#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);
}
为什么不对啊 哪里错了
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;
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执行停在该断点处。)是程序员必须掌握的技能之一。