解题思路:
先计算最大公约数,再计算最小公倍数,然后验证是否准确
注意事项:
无
参考代码:
#include <stdio.h>
//辗转相除法
int main(void){
int intput_data[2] = {0};
int max = 0,min = 0;
int output_data[2] = {0}; //最大公约数和最小公倍数
scanf("%d %d",intput_data,&intput_data[1]);
max = intput_data[0] >= intput_data[1] ? intput_data[0] : intput_data[1];
min = intput_data[0] >= intput_data[1] ? intput_data[1] : intput_data[0];
if(max == min)
output_data[0] = max;
else{
while(1){
output_data[0] = max % min;
if(output_data[0] == 0){
output_data[0] = min; //计算出最大公约数
break;
}
max = min;
min = output_data[0];
}
}
output_data[1] = (intput_data[0] * intput_data[1]) / output_data[0]; //计算出最小公倍数
if(output_data[0]*output_data[1] == intput_data[0] * intput_data[1]) //验证准确性
printf("%d %d",output_data[0],output_data[1]);
else
printf("EEROR");
return 0;
}
0.0分
0 人评分
C二级辅导-同因查找 (C语言代码)浏览:660 |
蓝桥杯历届试题-九宫重排 (C++代码)浏览:2783 |
C语言训练-计算一个整数N的阶乘 (C语言代码)浏览:928 |
买不到的数目 (C++代码)浏览:862 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:665 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:763 |
C语言训练-尼科彻斯定理 (C语言代码)浏览:463 |
printf基础练习2 (C语言代码)浏览:617 |
1014题解浏览:484 |
演讲大赛评分 (C语言代码)浏览:1629 |