#include<stdio.h>
int main() {
int m,n,t,a=2,flag,b,c;
scanf("%d %d",&m,&n);
if(m>n) t=n;
else t=m;
for(;a<=t;a++) {
flag=m%a==0&&n%a==0;
}
if(flag) printf("no");
else printf("yes");
}

判断互质,若不互质输出no。为什么不管输入啥,都是yes?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- [PE]经典八炮 2021-12-18 10:43关注
呵呵,你这样flag总是最后一个结果,所以总是yes,应该是只要能整除立即跳出循环,或者用flag|=
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 1