我正在尝试计算两个整数的最大公分母。
C代码:
#include <stdio.h>
int gcd(int x, int y);
int main()
{
int m,n,temp;
printf("Enter two integers: \n");
scanf("%d%d",&m,&n);
printf("GCD of %d & %d is = %d",m,n,gcd(m,n));
return 0;
}
int gcd(int x, int y)
{
int i,j,temp1,temp2;
for(i =1; i <= (x<y ? x:y); i++)
{
temp1 = x%i;
temp2 = y%i;
if(temp1 ==0 and temp2 == 0)
j = i;
}
return j;
}
在 if 语句中,请注意逻辑运算符。它and
不是&&
(错误地)。该代码在没有任何警告或错误的情况下工作。
C中有and
运算符吗?我正在使用 orwellDev-C++ 5.4.2(在c99模式下)。