c语言找最小公倍数最大公约数(C语言求最大公约数)

 2024-11-22  阅读 903  评论 0

摘要:给定两个正整数,求它们的最大公约数,接下来我们就来聊聊关于c语言找最小公倍数最大公约数?以下内容大家不妨参考一二希望能帮到您!c语言找最小公倍数最大公约数给定两个正整数,求它们的最大公约数。输入:输入多个数据,每行两个正整数且不超过int 范围。输出:行对应输出最大公约数。程序:辗转相除法。#inc

给定两个正整数,求它们的最大公约数,接下来我们就来聊聊关于c语言找最小公倍数最大公约数?以下内容大家不妨参考一二希望能帮到您!

c语言找最小公倍数最大公约数(C语言求最大公约数)

c语言找最小公倍数最大公约数

给定两个正整数,求它们的最大公约数。

输入:输入多个数据,每行两个正整数且不超过int 范围。

输出:行对应输出最大公约数。

程序:

  1. 辗转相除法。

#include <stdio.h>

int gcd(int m, int n); //将辗转相除的过程封装为函数,使主函数结构清晰。

int main(void)

{

int a, b;

while(~scanf("%d%d", &a, &b)){ //多组数据输入时的方式之一与while(scanf("%d%d", &a, &b) !=EOF)用途相同

printf("%d\n", gcd(a, b));

return 0;

}

int gcd(int m, int n)

{

return n ? gcd(n, m % n) : m; //此函数将辗转相除的过程以递归的形式呈现,简化程序属于常规套路。

}

2.更相减损术。

#include<stdio.h>

int main(void)

{

int a,b;

while(scanf("%d %d",&a,&b) == 2){ //利用scanf()函数的返回值处理输入数据不止一组的情况。

while( a != b ){

if(a > b)

a = a-b;

else

b = b-a;

} //将两数中较大的数改为两数之差。

printf("%d\n",a);

}

return 0;

}

,

版权声明:xxxxxxxxx;

原文链接:http://cn.tdroid.net/ce023Cz0EBAkFVlE.html

发表评论:

管理员

  • 内容264861
  • 积分0
  • 金币0
关于我们
lecms主程序为免费提供使用,使用者不得将本系统应用于任何形式的非法用途,由此产生的一切法律风险,需由使用者自行承担,与本站和开发者无关。一旦使用lecms,表示您即承认您已阅读、理解并同意受此条款的约束,并遵守所有相应法律和法规。
联系方式
电话:
地址:广东省中山市
Email:
注册登录
注册帐号
登录帐号

Copyright © 2022 太卓开发网 Inc. 保留所有权利。 泰达科技网易库网

页面耗时0.1051秒, 内存占用1.33 MB, 访问数据库17次