问题:编写一个程序,输入两个正整数,实现输出两个正整数的最大公约数和最小公倍数的功能;
运行效果图:
程序源代码:
#include <stdio.h>
#include <math.h>
int main()
{
int a = 0;
int b = 0;
int c = 0;
int d = 0;
printf( "请输入两个正整数:") ;
scanf("%d %d",&a,&b);
//最大公约数
for( c = a; c >= 1; c--)
{
if( a % c == 0 && b % c == 0 )
{
printf("输入的两个正整数 %d 和 %d 的最大公约数是:" ,a,b);
printf("%d \n",c);
break;
}
}
//最小公倍数
for( d = a; d <= ( a * b ); d++ )
{
if( d % a == 0 && d % b == 0 )
{
printf("输入的两个正整数 %d 和 %d 的最小公倍数是:" ,a,b);
printf("%d\n",d);
break;
}
}
return 0;
}