描述:
输入两个数,输出该两个数的最大公约数和最小公倍数。
#include<stdio.h>
// 算法
int fun(int m,int n,int &temp)
{
int a=1;
int min = n>m?m:n;
int max = n>m?n:m;
for(int i=2;i<=min ;i++)
if(min%i==0&&max%i==0)
{
a*=i; // 保存公约数
min/=i;
max/=i;
i=1;
}
temp = min*max*a;//不能同时返回两个数,可以用一个引用变量来保存一个值
return a;
}
int main(void)
{
int n,m,temp =0;
printf("请输入两个整数:");
scanf("%d%d",&n,&m);
printf("%d与%d的最大公约数为:%d\n",n,m,fun(n,m,temp));
printf("%d与%d的最小公倍数为:%d\n",n,m,temp);
getchar();
getchar();
return 0;
}