先是比较复杂的方法:
#include <stdio.h>
main()
{
int a,b,y,h;
scanf("%d,%d",&a,&b);
if(b<=0)
{
printf("error!");
}
else
{
if(a<b)
{
h=a;
a=b;
b=h;
}
do
{
y=a%b;
a=b;
b=y;
}while (y!=0);
printf("最大公约数为%d\n",a);
}
}
再上个简化版:
#include <stdio.h>
main()
{
int a,b;
int y=1;
scanf("%d,%d",&a,&b);
while (y!=0)
{
y=a%b;
a=b;
b=y;
}
printf("最大公约数为%d\n",a);
}
还有一件事,在简化时,直接把
while (y!=0);
粘到了前面,于是就进了死循环……无奈……