c语言编程,求两个数的最大公约数和最小公倍数

c语言编程,求两个数的最大公约数和最小公倍数,第1张

这样写:

#include

void

main()

{

int

m,n,i,r,temp;

printf("请输入第一个数的值:

");

scanf("%d",&m);

printf("请输入第二个数的值:

");

scanf("%d",&n);

if(n>m)

{

temp=m;

m=n;

n=temp;

}

i=n;

while(i%m!=0)

{

i=i+n;

}

printf("最小公倍数是:%d

\n",i);

r=m%n;

while(r!=0)

{

m=n;

n=r;

r=m%n;

}

printf("最大公约数是:%d

\n",n);

}

图:

#include<stdioh>

int gcd(int m, int n);

int lcd(int m, int n);

int main()

{

int a, b;

printf("输入两个正整数:");

scanf("%d%d", &a, &b);

printf("%d 和 %d 最大公约数为%d\n", a, b, gcd(a, b));

printf("最小公倍数为:%d\n", lcd(a, b));

}

int gcd(int m, int n)

{

int t;

if (m<n)

{

t = m;

m = n;

n = t;

}

while (n != 0)

{

t = m%n;

m = n;

n = t;

}

return m;

}

int lcd(int m, int n)

{

int t;

t = mn / gcd(m, n);

return t;

}

#include&lt;stdioh&gt;

int main()

{

int p,r,n,m,temp;

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

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

if(n&lt;m)

{

temp=n;

n=m;

m=temp;

}

p=nm;

while(m!=0)

{

r=n%m;

n=m;

m=r;

}

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

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

return 0;

}

方法二、//穷举法解两个数的最大公约数和最小公倍数

void exp(int num1,int num2){

int x,y,i;

x=num1;

y=num2;

int max=0;//最大公约数

for(i=1;i&lt;=num1;i++)

if(num1%i==0&&num2%i==0)

max=i;

Systemoutprintln("---------------------------------");

Systemoutprintln("利用穷举法计算所得最大公约数为:"+max);

Systemoutprintln("利用穷举法计算所得最小公倍数为:"+xy/max);//最小公倍数

Systemoutprintln("---------------------------------");

}

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include&lt;文件名&gt;

2、#include"文件名"

如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:

#include&lt;mathh&gt;//一些数学函数的原型,以及相关的类型和宏

如果需要包含针对程序所开发的源文件,则应该使用第二种格式。

采用#include命令所插入的文件,通常文件扩展名是h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。如下例所示:

#include"myprojecth"//用在当前项目中的函数原型、类型定义和宏

你可以在#include命令中使用宏。如果使用宏,该宏的取代结果必须确保生成正确的#include命令。

主要是辗转相除法。

方法一、不设函数

#include

<stdioh>

int

main

()

{int

p,r,n,m,temp;

printf("please

enter

two

positive

integer

numbers

n,m:");

scanf("%d

%d",&n,&m);

if

(n<m)

{temp=n;

n=m;

m=temp;

//把大数放在n中,

小数放在m中

}

p=nm;

//先将n和m的乘积保存在p中,

以便求最小公倍数时用

while

(m!=0)

//求n和m的最大公约数

{r=n%m;

n=m;

m=r;

}

printf("HCF=%d\n",n);

printf("LCD=%d\n",p/n);

//

p是原来两个整数的乘积

return

0;

}

方法二、调用函数

#include

<stdioh>

int

main

()

{int

p,r,n,m,temp;

printf("please

enter

two

positive

integer

numbers

n,m:");

scanf("%d

%d",&n,&m);

if

(n<m)

{temp=n;

n=m;

m=temp;

//把大数放在n中,

小数放在m中

}

p=nm;

//先将n和m的乘积保存在p中,

以便求最小公倍数时用

while

(m!=0)

//求n和m的最大公约数

{r=n%m;

n=m;

m=r;

}

printf("HCF=%d\n",n);

printf("LCD=%d\n",p/n);

//

p是原来两个整数的乘积

return

0;

}

以上就是关于c语言编程,求两个数的最大公约数和最小公倍数全部的内容,包括:c语言编程,求两个数的最大公约数和最小公倍数、C语言中 用函数调用求最大公约数和最小公倍数、c语言编程:输入两个正整数,求最大公约数和最小公倍数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10631968.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存