原题链接:二级C语言-公约公倍
结题要领:公约数只需让”m”一直循环至”n”,在循环里判断循环变量是否能被”m”和”n”整除,新的公约数会替换之前那个公约数,直至结束。
公倍数使”m”循环至”m+n”,在循环里判断循环变量能否整除”m”和”n”,第一个公倍数出现时立即结束。
#include<stdio.h>
int main()
{
int a,b,min,max,i;
scanf("%d %d",&a,&b);
for(i=1;i<=b;i++)
if(a%i==0&&b%i==0) //判断是否为公约数
max=i; //把公约数存进max里
for(i=a;i<=a*b;i++)
if(i%a==0&&i%b==0) //判断是否为公倍数
{
min=i; //把公倍数存进min里
break; //存入第一个时停止循环
}
printf("%d %d",max,min);
}
0 分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复