C语言程序设计----编程部分答案解析
编程题目8
1最大公约数与最小公倍数。(25分)
题目内容:编写两个函数,分别求两个整数的最大公约数和最小公倍数,并用主函数调用这两个函数,然后输出结果。两个整数由键盘输入。约定最大公约数为正整数,两数里有负的则最小公倍数就为负的。
输入格式:输入均不为0的整数n和m(n与m的乘积还在整数范围内)(两数之间用英文,隔开)
输出格式:输出这两个整数的最大公约数和最小公倍数(两结果之间用英文,隔开)
输入样例:24,36
输出样例:12,72
输入样例:-48,128
输出样例:16,-384
时间限制:500ms 内存限制:32000kb
代码:
#include<stdio.h>
#include<math.h>
int beishu(int ,int);
int yueshu(int ,int);
int main()
{
int n,m;
scanf("%d,%d",&n,&m);
if(m>=0&&n>=0)
printf("%d,%d",yueshu(m,n),beishu(m,n));
else
printf("%d,%d",yueshu(m,n),-abs(beishu(m,n)));
return 0;
}
int yueshu(int m,int n){
n=abs(n);
m=abs(m);
if(n==m )
return n;