当前位置: 代码迷 >> C语言 >> 最大公约数,为什么不行?
  详细解决方案

最大公约数,为什么不行?

热度:471   发布时间:2008-03-28 10:59:34.0
回复 9# 的帖子
/*maked by DEV-C++ 4.9.9.2*/
#include "stdio.h"
int main()
{
int a,b,c,d;
scanf("%i %i",&a,&b);
for(c=2;(c<=a)&&(c<=b);c++)
{
if ((a%c==0) && (b%c==0))
d=c;
}
printf("%d",d);
system("PAUSE");
return 0;
}
/*关键是:
1、不要有\n,
2、两个%d之间要有空格以示分割
所以9楼的是正确的。
3、我这里多出来的括号是不需要的,只是为了看清楚。
----------------解决方案--------------------------------------------------------
//求最大公约数的可以用辗转相除法地
#include<stdio.h>
main()
{
int a,b,c;
printf("请输入两个数:a和b:?");
scanf("%d %d",&a,&b);
if(a<b)
{
c=a;
a=b;
b=c;
}
c=a%b;
while(c!=0)
{
a=b;
b=c;
c=a%b;
}
printf("最大公约数%d\n",b);
}
----------------解决方案--------------------------------------------------------
  相关解决方案