C语言实现用递归求正整数 a 和 b 最大公约数(辗转相除法)

编程入门 行业动态 更新时间:2024-10-27 12:29:00

C语言实现用<a href=https://www.elefans.com/category/jswz/34/1771140.html style=递归求正整数 a 和 b 最大公约数(辗转相除法)"/>

C语言实现用递归求正整数 a 和 b 最大公约数(辗转相除法)

完整代码:

// 用递归求正整数 a 和 b 最大公约数。
#include<stdio.h>//求最大公约数这里采用的是辗转相除法,也叫欧几里德算法int func(int a,int b){//当a取模b为零是说明b就是a的最大公约数if (a%b==0){return b;}//其他情况时,将a替换为b,b替换为a%b继续继续辗转相除//b>a时,这一步也可以将它们互换,此时a%b=a,即func(a,b)-->func(b,a)然后再继续辗转相除return func(b,a%b);
}int main()
{int a,b;printf("请输入正整数a\n");scanf("%d",&a);printf("请输入正整数b\n");scanf("%d",&b);printf("%d与%d的最大公约数是%d",a,b,func(a,b));return 0;
}

运行截图:

更多推荐

C语言实现用递归求正整数 a 和 b 最大公约数(辗转相除法)

本文发布于:2023-12-06 00:13:47,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1665842.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:递归   最大公约数   除法   语言   正整数

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!