这是一个非常另人无耐的题目,大家来找茬啊。

#include
int main()
{
int a,b,c,n,d,m,e,f;
printf("请输入两个数:");
scanf("%d,%d",&n,&m);
if ( n>m)
{
a=n;
n=m;
m=a;
}
c=n;d=m;
while (b!=0)
{
b=m%n;
m=n;
n=b;
}
printf("最大公约数:%d\n",n);
e=c*d;
f=e/n;
printf("最小公倍数:%d",f);
return 0;
}

哪位大神知道何处有错。
求的是最大公约数和最小公倍数。

while判断是先判断在执行,但是b是没有值的,不能作为判断,建议吧while(b!=0){...}换成do{...}while(b=0)

前提是你知道公约数的概念

还是少用while,用for循环吧

b没有初始化,b等于多少?