编写函数,函数的形式参数为两个正整数a和b,函数返回a与b的最大公约数,要求用递归方式实现。主函数中输入两个整数m和n,输出m和n的最大公约数。
输入样例:
36 24
结尾无空行
输出样例:
12
结尾无空行
代码实现:
#include <stdio.h>
int Gcd(int a, int b);
int main()
{
int a, b, c;
scanf("%d %d", &a, &b);
c = Gcd(a,b);
if (c != -1)
{
printf("%d\n", c);
}
return 0;
}
int Gcd( int a ,int b )
{
if(a<=0||b<=0)
{
return -1;
}
if(a==b)
return a;
if(a>b)
{
a=a-b;
}
else if(a<b)
{
b=b-a;
}
return Gcd(a,b);
}
都是IT小白,交流群不可少,相互学习,相互交流感悟,可能会给你一些启发。
该博客介绍了如何使用递归方式编写一个计算两个正整数最大公约数的函数,并在主函数中读取用户输入的两个整数,输出它们的最大公约数。示例中给出了3624和另一个未给出的整数的最大公约数为12。适合初学者了解递归编程和最大公约数计算。
1万+

被折叠的 条评论
为什么被折叠?



