C语言编程:从键盘输入两个正整数a和b,求a和b的最小公倍数,咋做?

要求:
1.用自定义函数求最小公倍数。
2.代码中不使用Break语句。
3.要考虑时效问题。
4.输入错误要有提示并退出。

代码文本:

#include "stdio.h"

int mylcm(int a,int b){//求LCM函数

int t;

if(a<b)

t=a,a=b,b=t;

for(t=a;t%b;t+=a);

return t;//返回LCM

}

int main(int argc,char *argv[]){

int a,b;

printf("Enter a & b(int a>0,b>0)...\n");

if(scanf("%d%d",&a,&b)==2 && a>0 && b>0)

printf("The LCM is %d\n",mylcm(a,b));

else//提示输入错误并退出

printf("Input error, exit...\n");

return 0;

}

比较简单,供参考……

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-05-01

#include <stdio.h>

int gcd(int a,int b)

{ int r;

  while(r=a%b)a=b,b=r;

  return b;

}

int main()

{ int a,b;

  scanf("%d%d",&a,&b);

  if(a<1||b<1)printf("Input error!\n");

  else printf("%d\n",a*b/gcd(a,b));

  return 0;

}