刚编的求最大公约数运行结果不理想。(书上的方法就不要推荐了)
main(){int a,b,i;
printf("input two numbers:");
scanf("%d,%d",&a,&b);
i=a;
while(a%i!=0||b%i!=0){i--;}
printf("zui da yue shu:%d\n",i);
return 0;
}
最大公约数一定小于等于a,b且大于等于1。每次i--;最终得到最大公约数2。算法错了吗?为什么不正确
2011-09-23 21:59
2011-09-23 22:00
程序代码:#include <stdio.h>
int main()
{
int a, b, n;
printf ("imput two numbers:\n");
scanf ("%d%d", &a, &b);
while (a % b != 0)
{
n = a % b;
a = b;
b = n;
}
printf ("largest common divisor :%d\n", b);
return 0;
}
2011-09-23 22:17
2011-09-23 22:19

2011-09-23 22:20
2011-09-23 22:25
2011-09-23 22:26
2011-09-23 22:27
2011-09-23 22:34
2011-09-23 22:38