C语言:这样求最小公倍数为什么不对呢?
来源:百度知道 编辑:UC知道 时间:2024/07/03 07:19:57
#include<stdio.h>
main()
{int m,n,t,gongbei;
printf("请输入两个数");
scanf("%d%d",&m,&n);
if(m>0&&n>0&&m>n)
{t=n,n=m,m=t;}
for(gongbei=n;gongbei>=n;gongbei++)
{if(gongbei%m==0&&gongbei%n==0)
printf("最小公倍数是%d",gongbei);break;}
}
举个例子 我输入 3和8就得不到我想要的结果
没有分 只能表示感谢了
main()
{int m,n,t,gongbei;
printf("请输入两个数");
scanf("%d%d",&m,&n);
if(m>0&&n>0&&m>n)
{t=n,n=m,m=t;}
for(gongbei=n;gongbei>=n;gongbei++)
{if(gongbei%m==0&&gongbei%n==0)
printf("最小公倍数是%d",gongbei);break;}
}
举个例子 我输入 3和8就得不到我想要的结果
没有分 只能表示感谢了
if(gongbei%m==0&&gongbei%n==0)
{
printf("最小公倍数是%d",gongbei);break;
}把这两个括起来
和你那个最大公约数一样
不想m n小于0
定义int的时候定义m n的值为一就可以了
int是整型,定义的都是整数 不是0 最小值只能是1了的
最后少了两个大括号,加上再运行看看
for(gongbei=n;;gongbei++)
{
if(gongbei%m==0&&gongbei%n==0)
{
printf("最小公倍数是%d",gongbei);
break;
}
}