用c语言编写求两个数的最小公倍数的程序

如题所述

书上有类似的问题,你照猫画虎
#include
#include
int
zxgb(int
a,int
b)
{
int
i;
for(i=1;a*i%b;++i);
return
a*i;
}
int
main()
{
int
a,b;
printf("请输入两个正整数:");
scanf("%d%d",&a,&b);
//楼上这一句错了
if(a*b==0)
{
printf("你输入的数据不正确!");
exit(0);}
//防止输入0
printf("%d和%d的最小公倍数是:%d\n",a,b,zxgb(a,b));
//楼上这里用判断语句多余了
return
0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-11-07
#include "stdio.h"
int main(void){
    int m,n,t;
    printf("Input m & n(int m,n>0)...\n");
    if(scanf("%d%d",&m,&n)!=2 || n<1 || m<1){
        printf("Input error, exit...\n");
        return 0;
    } 
    if(m>n)
        m^=n,n^=m,m^=n;
    for(t=n;n%m;n+=t);
    printf("The LCM is %d\n",n);
    return 0;
}

本回答被网友采纳
第2个回答  2016-11-07
#include<stdio.h>
int main(){
int i,j,m,n,t;
scanf("%d%d",&m,&n);
i=m,j=n;
if(m<n) t=m,m=n,n=t;
while(m%n!=0){
t=m%n,m=n,n=t;
}
m=i*j/n;
printf("%d\n",m);
return 0;
}
相似回答