发布网友 发布时间:1天前
共1个回答
热心网友 时间:1天前
你做的那个好复杂,没有注释,很
#include <stdio.h>
int Max_divisor(int j,int k) /*定义求最大公约数的函数 */
{
int divisor = 0; /*定义接收公约数的变量 */
divisor = j < k ? j : k;
while(1)
{
if ((divisor!=0)&&(j%divisor==0)&&(k%divisor==0))
{
printf("最大公约数是:%d\n",divisor);/*筛选出最大公约数*/
break;
}
divisor--;
}
return 1;
}
int Min_multiple(int m,int n) /*定义求最小公约数的函数 */
{
int multiple = 1; /*定义接收公倍数的变量 */
multiple = m > n ? m : n;
while(1)
{
if ((multiple%m==0)&&(multiple%n==0)&&(multiple<=m*n))
{
printf("最小公倍数是:%d\n",multiple);/*筛选出最小公倍数*/
break;
}
multiple++;
}
return 1;
}
int main()
{
int a = 10; /*定义变量a并初始化 */
int b = 20; /*定义变量b并初始化 */
printf("输入两个整数:");
scanf("%d%d",&a,&b); /*输入两个整数 */
Max_divisor(a,b); /*调用函数 */
Min_multiple(a,b);
return 0;
}
难看懂,我写的这个,希望帮到你