C++语言题目:输入两个正整数m和n,求其最大公约数和最小公倍数.

如题所述

用了一种比较笨的方法,但是好理解,希望对你有帮助。#include<stdio.h>void main(){ int a,b; printf("*********请输入2个整数*********\n"); scanf("%d %d",&a,&b);//注意输入a,b时用空格隔开 printf("最小公倍数是:%d\n" ,min_num(a,b)); printf("最大公约数是:%d\n" ,max_num(a,b)); }//这个函数用于求最小公倍数int min_num(int x,int y){ int i,m; m = x>y?x:y; for(i = m;;i++) { if(i%x==0 && i%y==0) break; } return i; }//这个函数用于求最大公约数int max_num(int x,int y){ int i,m; m = x>y?x:y; for(i = m;;i--) { if(x%i==0 && y%i==0) break; } return i;}
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答