文章

13

粉丝

499

获赞

33

访问

137.8k

头像
【c】不是辗转相除的方法
P1041 杭州电子科技大学2019年机试题
发布于2020年3月26日 16:55
阅读数 10.1k

  1. #include<stdio.h>
  2. int main()
  3. {
  4. int m,n,min,max;
  5. int i=0;
  6. scanf("%d %d",&m,&n);
  7. min = (m>n)? n:m;
  8. for(i=min;i>0;i--)//公约数
  9. {
  10. if((m%i==0)&&(n%i==0))
  11. {
  12. printf("%d ",i);
  13. break;
  14. }
  15. }
  16. max = (m>n)? m:n;
  17. for(i = max;i<=n*m;i++)//公倍数
  18. {
  19. if((i%m==0)&&(i%n==0))
  20. {
  21. printf("%d\n",i);
  22. break;
  23. }
  24. }
  25. return 0;
  26. }

这题要注意的唯一一点就是:如果一旦检测到最大公约和最小公倍数需要立即break掉

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发