关于求最大公约数问题!!!?????
main(){
int a,b,r;
printf("shu ru zheng zheng shu a he b de zhi :");
scanf("%d%d",&a,&b);
if(a<b)
{
r=a;a=b;b=r;}
do
{
r=a%b;
a=b;
b=r;}
while(r!=0);
printf("a he b de zui da gong yue shu :%d",a);}
在这个用辗转相除法求a 和b最大公约数程序里,为什么最下面一排――printf("a he b de zui da gong yue shu :%d",a);}是a呢?为什么不是b呢??b才是除数啊!!
搜索更多相关的解决方案:
最大公约数
----------------解决方案--------------------------------------------------------
r=a%b 余数
a=b 除数
b=r 余数
若输出b ,刚输出了余数
输出a, 输出除数
----------------解决方案--------------------------------------------------------
哦,好的,我再研究一下~!!
----------------解决方案--------------------------------------------------------
main()
{int a,m,n,sum=0;
printf("input m.n");
scanf("%d.%d",&n,&m);
for(a=1;a<=(m>n)?n:m;a++)
if(m%a==0&&n%a==0)sum=a;
printf("%d",sum);}
----------------解决方案--------------------------------------------------------