C语言 互质数问题(最好有点解释)

2025-02-01 07:04:05125 次浏览

最佳答案

/*

21 17

2 4

不是

9 3

不是

13 39

不是

q

Press any key to continue

*/

#include 

int MaxFactor(int m,int n) { // 最大公约数

int t;

if(n < m) { t = n;n = m;m = t; }    

for(t = m;t > 0;t--) {

if(m % t == 0 && n % t == 0)

return t;

}

return 1; // 永远得不到执行。

}

void is_huzhishu(int x,int y,int *res) {

if(1 == MaxFactor(x,y)) *res = 1;

else *res = 0;

}

int main() {

int m,n,res;

while(scanf("%d%d",&m,&n) == 2) {

is_huzhishu(m,n,&res);

if(res) printf("是\n");

else printf("不是\n");

}

return 0;

}

声明:知趣百科所有作品均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请在页面底部查找“联系我们”的链接,并通过该渠道与我们取得联系以便进一步处理。