黑马程序员技术交流社区
标题:
输入两个正整数m和n,求其最大公约数和最小公倍数.
[打印本页]
作者:
qq6937523
时间:
2016-4-4 19:14
标题:
输入两个正整数m和n,求其最大公约数和最小公倍数.
这个要怎么去实现 求大神的源码
作者:
zxinsunshine
时间:
2016-4-4 23:05
#include <stdio.h>
int main(){
// 输入两个正整数m和n,求其最大公约数和最小公倍数
int m,n;
printf("请输入两个正整数,用逗号隔开:");
rewind(stdin);
scanf("%d,%d",&m,&n);
for(int i = m>n?m:n; i > 0; --i){
if(m%i==0 && n%i==0){
printf("最大公约数是:%d\n",i);
break;
}
}
for(int i = m>n?m:n; i <= m*n; ++i){
if(i%m==0 && i%n==0){
printf("最小公倍数:%d\n",i);
break;
}
}
return 0;
}
复制代码
作者:
Aliu
时间:
2016-4-18 18:18
本帖最后由 Aliu 于 2016-4-18 18:30 编辑
#include <stdio.h>
int main(int argc, char *argv[]) {
int m,n;
printf("请输入两个正整数,用逗号隔开:");
scanf("%d,%d",&m,&n);
int i;
//两数相除,再除数除以余数,余数为零时,除数就是最大公约数。
while(n!=0){
i=m%n;
m=n;
n=i;
}
printf("最大公约数是 :%d\n",m);
return 0;
复制代码
作者:
zghnyyez445
时间:
2016-4-18 22:50
2楼正解,3L有缺陷,数字大的时候就不对了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2