题目描述
写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。
输入格式
两个数
输出格式
最大公约数 最小公倍数
样例输入
6 15
样例输出
3 30
代码部分
#include<stdio.h>
int gongyueshu(int num1,int num2);
int gongbeishu(int num1,int num2);
int main()
{
int num1,num2,y,b;
scanf("%d %d",&num1,&num2);
y=gongyueshu(num1,num2);
b=gongbeishu(num1,num2);
printf("%d %d",y,b);
return 0;
}
int gongyueshu(int num1,int num2)
{
int m,max=0;
for(m=2;m<=num1;m++){//注意这里m=2,最开始就忽略了这一点导致错误
if(num1%m==0&&num2%m==0){
if(max<m){
max=m;
}
}
}
return max;//返回值还没搞明白
}
int gongbeishu(int num1,int num2)
{
int i;
for(i=num1;;i++){
if(i%num1==0&&i%num2==0){
break;
}
}
return i;
}
用了最笨的一种思路,好像还有更简单的,让我去学学先。