编写一个函数,传入a,b两个int类型的变量,返回两个值的最大公约数。
例如:输入传入(0 , 5)函数返回5,传入(10 , 9)函数返回1,传入(12 , 4)函数返回4
#include <stdio.h>
int max(int a,int b)
{
int p,q,k;
if(a > b) //比较a,b的大小
{
p = a;
q = b;
}
if(a < b)
{
p = b;
q = a;
}
if(a == b || b == 0)
return a;
if(a == 0) //a==0,就返回b
return b;
k = q; //将较小值赋给k
for(;q >= 1;q--)
if(k%q == 0 && p%q == 0) //一旦q能被两个数整除就返回q
return q;
return 0;
}
int main()
{
int i;
i = max(3,4); //函数调用
printf("%d",i);
return 0;
}