c语言编程输入两个正整数m和n求其最大公约数和

2021-02-02 06:55:33 字数 5514 阅读 9929

1楼:冠夏登溪

用了一种比bai较笨的方法,du但是好理解zhi,希望对你有帮助dao

。#include

void

main()

//这个函数用于求最小公倍数

intmin_num(int

x,int

y)returni;}

//这个函数用于求最大公约数

intmax_num(int

x,int

y)returni;}

2楼:i乐于助人

#include

intmain()

printf("greatest***mondivisor:%d\n",n_cup);

printf("lease***monmultiple:%d\n",m*n/n_cup);

}elseprintf("error!\n");

return0;}

3楼:兰昂位力

#include

using

namespace

std;

intmain()

c++实现输入两个正整数m和n,求其最大公约数和最小公倍数?

4楼:凌乱心扉

#include "stdio.h"

void main()

}if(i == c+1)

printf("没有最大公约数 ");

c = m > n ? m : n ; // 取 m n 中较大的数,赋值给c //

for (i = c ; i <= m*n; i++)}}

5楼:太史付友尚媚

//输入的两bai个数du请用空格分隔,如:

zhi12

18#include

intmain()

{int

p,r,n,m,temp;

printf("请输入dao两个正整数版n,m:");

scanf("%d%d,",&n,&m);

if(n评论0

0加载更权多

6楼:

#include

using namespace std;

int main()

num1 = a;

num2 = b;

while(num2 != 0)

cout << "最大公约数为:" << num1<< " 最小公倍数为:" << (a * b) / num1 << endl;

return 0;}

用c语言编写程序:输入两个正整数m,n.求其最大公约数和最小公倍数

7楼:匿名用户

#include "stdio.h"

void main()

8楼:林柯伊南

#include"stdio.h"

main()

while (m%n!=0)

a=a/n;b=b/n;q=a*b*n;

printf("两数最大公约数为

%d,最小公倍数为 %d\n",n,q);}

9楼:匿名用户

if (n>m)

while (m%n)

算法就是用辗转相除法求最大公约

数算法描述:

m对n求余为a, 若a不等于0

则 m <- n, n <- a, 继续求余否则 n 为最大公约数

10楼:桔聚聚

还要考虑如果m/n等于零的情况

c语言编程:输入两个正整数,求最大公约数和最小公倍数

11楼:匿名用户

1、新建一个

工程来和.c文件 ,输入头文件和源主函数。

2、定义变量类型。

3、接下来需要输入a和b。

4、用一个if 语句去判断这两个数是否大于1。

5、用while 语句去求得最大公倍数和最小公约数。

6、输出最大公约数和最小公倍数。

7、编译,运行得到最后的结果。

12楼:凌乱心扉

#include

int main()

p=n*m;

while(m!=0)

printf("它们的最大公约数为:%d\n",n);

printf("它们的最小公约数为:%d\n",p/n);

return 0;}方法

二、//穷举法解两个数的最大公约数和最小公倍数void exp(int num1,int num2)

13楼:会飞的小兔子

#include

voidmain()

a=n1;

b=n2;

while(b!=0)

printf("最大公约

专数为:%d\n",a);

printf("最小公倍数为:%d\n\n",n1*n2/a);

}}扩展资属料c语言求最大公约数辗转相除法

#include

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

intmain(void)

int***(intm,intn)

14楼:匿名用户

main()

printf("its maxgongyueshu:%d\n",n);//打印最大公约数.

printf("its mingongbeishu:%d\n",p/n);打印最小公倍数.

基本原理如下:

用欧几里德算法(辗转相除法)求两个数的最大公约数的步骤如下:

先用小的一个数除大的一个数,得第一个余数;

再用第一个余数除小的一个数,得第二个余数;

又用第二个余数除第一个余数,得第三个余数;

这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(如果最后的除数是1,那么原来的两个数是互质数)。

例如求1515和600的最大公约数,

第一次:用600除1515,商2余315;

第二次:用315除600,商1余285;

第三次:用285除315,商1余30;

第四次:用30除285,商9余15;

第五次:用15除30,商2余0。

1515和600的最大公约数是15。

两个正整数的最小公倍数=两个数的乘积÷两个数的最大公约数

由于两个数的乘积等于这两个数的最大公约数与最小公倍数的积。这就是说,求两个数的最小公倍数,可以先求出两个数的最大公约数,再用这两个数的最大公约数去除这两个数的积,所得的商就是两个数的最小公倍数。

例 求105和42的最小公倍数。

因为105和42的最大公约数是21,

105和42的积是4410,4410÷21=210,

所以,105和42的最小公倍数是210。

15楼:严晓冬

#include

int main()

16楼:背心_心背

int ***(int, int); //两个数的最大公约数int n***(int *, int) //n个数的最大公约数int lcm(int, int) //两个数的最小公倍数int nlcm(int *, int) //n个数的最小公倍数int ***(int a, int b)int c;

while((c = a % b) != 0) //辗转相除return b;

}int n***(int * pa, int n)int lcm(int a, int b) //最大公倍数 = 两数乘积 / 最大公约数

int nlcm(int * pa, int n)

17楼:匿名用户

#include

intmain()

printf("greatest***mondivisor:%d\n",n_cup);

printf("lease***monmultiple:%d\n",m*n/n_cup);

}elseprintf("error!\n");

return0;

}辗转相除法求最大公约数

最小公倍数 = 两个数的积 / 最大公约数

18楼:匿名用户

#include

voidmain()

m1=m;

n1=n;

while(n!=0)

printf("%d和%d的最大公约数是:%d\n",m1,n1,m);

printf("最小公倍数是:%d\n",m1*n1/m);}

19楼:匿名用户

#include

void main()

a=c;b=d;

while(b!=0)

printf("最大公约数是:%d\n",a);

printf("最小公倍数是:%d\n",c*d/a);}

20楼:這孩子_缺愛

#include

int main(void)

p=n*m;

while(m!=0)

printf("它们的最大公约数为:%d\n",n);

printf("它们的最小公倍数为:%d\n",p/n);}

21楼:口水大湿

int main(int argc, const char * argv)

for (i = b; i >= 1; i--)}if (mix = (a * b) / i)return 0;

好久没做过了 不知道对不对! 你自己试试吧!!!!!

22楼:謎逝

#include

int main()

}min = a*b/max;

printf("最大公约数是%d,最小公倍数是%d\n",max,min);

return 0;}

23楼:匿名用户

while 流程图

根据 xxt9388 道友的启发:

#include

#include

int main()

不知道可不可以

24楼:匿名用户

^#include

//最大公约数

int***(inta,intb)

returna>0?***(b%a,a):b;

}//最小公倍数

intlcm(inta,intb)for(i=b;i%a!=0;i+=b);

returni;

}intmain()

return0;}

c"语言"编程"输入正整数m和n(m》1,n

1楼 匿名用户 这个刚才阿哥测试过了,,oko o哈! include void main if i j printf d j printf n 2楼 include stdio h void main printf count d sum d n count sum int prime int m...

c语言编写程序输入正整数n计算,c语言编写程序,输入一个正整数n,计算1+(1/3)+(1/5)+...的前n项之和。求过程

1楼 匿名用户 include int main for i 1 i n i printf sum 3f n sum return 0 示例运行结果 20sum 2 480 2楼 匿名用户 include int main void for int i 0 i printf 数列前 d 项之和为 g...

c语言求最小值输入正整数n再输入n个整数

1楼 育知同创教育 把这些数都装在一个数组里面 比如a for int i 0 ia j printf d a 0 2楼 匿名用户 include int main int argc char argv printf 依次输入 d个整数 n n for i 0 i n i printf 最小数 d ...