在第二个if调试时发生的 ,不知道为什么能帮忙解答下吗
int main()
{
int a,b,c=1,d=0,max=0;
scanf("%d%d",&a,&b);
if(a>=b)
{
max=a;
}
else{
max=b;
}
for(;c
{
if(a%c==0&&b%c==0)
{
d=c;
}
else
{
d=a*b;
}
}
printf("%d",d);
return 0;
}
图
运行无结果
求两个数最大公约数
修改如下,供参考:
#include <stdio.h>
int main()
{
int a, b, c = 1, d = 0, max = 0;
scanf("%d%d", &a, &b);
if (a >= b)
{
max = b; //max = a;
}
else {
max = a; //max = b;
}
for (c = max; c > 0; c--) //for (; c < max; c++)
{
if (a % c == 0 && b % c == 0)
{
d = c;
break;
}
//else
//{
// d = a * b;
//}
}
printf("%d", d);
return 0;
}
for倒序判断,满足条件就结束循环。把你输入内容截图看看