欧莱雅男士美白系列:·求一不比较简单的C程序/我刚学C不太懂 ,谢谢·!

来源:百度文库 编辑:神马品牌网 时间:2024/05/01 00:58:21
输入两个数字 求他们的最大公约数和最小公倍数怎么编写程序?

我想有个参考!希望会的人来给我提示。在下非常感谢·!

main()
{int a,b,c,d,e,f;
printf("input two numbers:");
scanf("%d%d",&a,&b);
if(a<b){c=a;a=b;b=c;};
for(d=a;d<a*b;d+=a)
if(d%b==0){e=d;break;}
f=a*b/e;
printf("%d %d",e,f);
}

你先学QBEST低级语言学起吧!

#include<stdio.h>
void main()
{int a,b,m,n,min;
scanf("%d%d",&a,&b);
min=(a<b)?a:b;
for(int i=1;i<=min;i++)
{
if(a%i==0&&b%i==0)
m=i;
}
for(int j=min;j<=a*b;j++)
{
if(j%a==0&&j%b==0)
{
n=j;
break;
}
}
printf("%d,%d",m,n);
}
其中m为最大公约数,n为最大公倍数。

最大公约数
先求两个数哪个小然后,用FOR1到这个数再用这两个数都除以它取余看是否都为0,都是的话记录下这个数,最后这个数就是最小公约数.
最小公倍数
有点麻烦,临时想出来的高手请指正
同样比较两个数求大的,再用FOR从大的开始死循环,用数除以两个数如果都为0,BREAK,这个数就是最小公倍数.

我和你一样也是初学者,期间也遇到了很多问题,我在vc下编了个测试通过了,不过写得不好
#include <stdio.h>
void main()
{
int a,b,num1,num2,temp;
printf("Intput two numbers:");
scanf("%d,%d",&num1,&num2);
a=num1;b=num2;
while(b!=0){
temp=a%b;
a=b;
b=temp;
}
printf("zuidagongyueshu:%d\n",a);
printf("zuixiaogongbeishu:%d\n",num1*num2/a);
}