输入n跟m两数,求两个数的最大公约数,跳出循环出错,一直输出结果
输入n和m两数,求两个数的最大公约数,跳出循环出错,一直输出结果。
题目很简单
要求是输入n和m两数,求两个数的最大公约数,我已经写出来了,可以不知道怎么跳出下面的循环,
比如我输入20和50
然后结果就一直在输出this is 10....没办法跳出循环..我把break加在printf("this is %d\n",r);后面结果没办法输出了。
思路卡在这里了,感谢大家解答一下。
#include<stdio.h>
void main()
{
int n,m,r;
printf("pealse input two diginals\n");
scanf("%d,%d",&n,&m);
if(n>m) r=m;
else r=n;
while(r>=1)
{if(n%r==0&&m%r==0) printf("this is %d\n",r);
else r--;}
}
------解决方案--------------------
没人会吐槽你,大家都是一步一步学习琢磨出来的
------解决方案--------------------
题目很简单
要求是输入n和m两数,求两个数的最大公约数,我已经写出来了,可以不知道怎么跳出下面的循环,
比如我输入20和50
然后结果就一直在输出this is 10....没办法跳出循环..我把break加在printf("this is %d\n",r);后面结果没办法输出了。
思路卡在这里了,感谢大家解答一下。
#include<stdio.h>
void main()
{
int n,m,r;
printf("pealse input two diginals\n");
scanf("%d,%d",&n,&m);
if(n>m) r=m;
else r=n;
while(r>=1)
{if(n%r==0&&m%r==0) printf("this is %d\n",r);
else r--;}
}
------解决方案--------------------
没人会吐槽你,大家都是一步一步学习琢磨出来的
------解决方案--------------------