任务:输出最大公约数(应用break语句)
输入正整数m和n,输出它们的最大公约数,要求在循环中应用break语句。
输入样例:
36 24
输出样例:
12
我写的代码
#include
int main(){
int m,n,i,t;
scanf("%d%d",&m,&n);
if(m>n){
t=m;
m=n;
n=t;
}
for(i=n;i
if(m/i==0&&n/i==0){
printf("%d",i);
}
}
return 0;
}
for(i=n;i<n;i--){
这啥循环条件啊?i=n,还要求i<n,这不一开始就不成立,循环不会执行的啊。
另外也不是m/i和n/i,应该用求余啊
修改如下:
int main()
{
int m,n,i,t;
scanf("%d%d",&m,&n);
if(m>n){
t=m;
m=n;
n=t;
}
for(i=n;i>=1;i--){
if(m%i==0&&n%i==0){
printf("%d",i);
break;
}
}
}