我试着用IF语句求解,可是遇到很多问题。
C语言;求解M和N的最大公约数(是否可以用IF语句),用IF语句求解。
答案:3 悬赏:70 手机版
解决时间 2021-04-12 15:11
- 提问者网友:富士山上尢
- 2021-04-12 06:57
最佳答案
- 五星知识达人网友:大漠
- 2021-04-12 07:47
#include <istdio.h>
void main()
{
int a,b;
int m,n;
printf("请输入两个数\n");
scanf("%d%d",&a,&b);
m=a,n=b;
while(m!=n)
{
if(m>n)m=m-n;
else n=n-m;
}
//两个数相等,且两个位都表示最大公约数
printf("m=%d,n=%d\n",m,n);
}
执行结果:
全部回答
- 1楼网友:话散在刀尖上
- 2021-04-12 08:32
用辗转相除法来做吧,不知道是不是用goto语句来做,暂且用goto做吧
#include<stdio.h>
void main()
{ int m,n,r;
printf("m=");
scanf("%d",&m);
printf("n=");
scanf("%d",&n);
if(m<n)
{ r=m;m=n;n=r;} //保证m是大数
loop:r=m%n;
m=n;
n=r;
if(n!=0)
goto loop;
printf("最大公约数是:%d\n",m);
}
- 2楼网友:骨子里都是戏
- 2021-04-12 08:23
在循环里判断,没有判断怎么会有结果
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯