编写两个函数,分别求两个正整数的最大公约数和最小公倍数;

时光总嘲笑我的痴心妄想 提交于 2019-12-17 02:59:28

7.6编写两个函数,分别求两个正整数的最大公约数和最小公倍数;

#include<stdio.h>
int fun1(int m,int n){// 最大公约数函数 
	int t;
	if(m<n){//确保m为大数 
		t=m;
		m=n;
		n=t;
	}
	while(n!=0){//辗转相除 ,找最大公约数 
		t=m%n;
		m=n;
		n=t;
	} 
	return  m;//此时n为0,返回公约数m 
} 
int fun2(int m,int n){//最小公倍数函数 
	int t;
	t=m*n/fun1(m,n);
	return t; 
}
int main(){
	int m,n;
	printf("请输入两个正整数:\n");
	scanf("%d%d",&m,&n);
	printf("%d和%d的最大公约数为:%d\n",m,n,fun1(m,n));
	printf("%d和%d的最小公约数为:%d",m,n,fun2(m,n));
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!