不好意思,又要麻烦大家一道题了
求两个正整数的最大公约数
我写的是:
main() { int m,n,t; scanf("%d,%d",&m,&n); if(m>=n) { t=n; while(t>1) { if(m%t==0&&n%t==0) break; t=n-1; } } printf("The big number is %d\n",t); }
我的思路是把两数中最小的一个数作为除数,如两数都能整除,则它就是最大公约数;如不能,则将它减1,最小到1
但我在TC上调试时结果明显不对,尤其是当我输入12,8两个数时,就按什么都没反应了,像死机了(狂郁闷)
希望大家帮我看看这个程序哪里出问题了,标准的算法我书上已看过了,只是想知道我的哪里错了,谢谢大家了