c语言。枚举法求最大公约数,运行后得不到正确答案,请问是哪里的问题,该如何解决?
/*【枚举法求最大公约数】
1、设t为2
2、如果u和v都能被t整除,则记下这个t
3、t=t+1后重复第二步,直到t等于v或u
4、直到第四步成立,此时的t就是gcd(最大公约数)
*/
#include<stdio.h>
int main()
{
int t = 2,gcd;
int u,v;
printf("请输入两个数:");
scanf("%d%d",&u,&v);
if(u % t != 0||v % t != 0)
{
t += t;
}
else
gcd = t;
printf("最大公约数为%d",gcd);
return 0;
}