C语言实现多个数的最大公倍数
[cpp]#include <stdio.h>
//获得最小公倍数
int doLCM(int* array,int size){
int x,y,temp,易做图=array[0],i,result=1;
for(i=0;(i+1)<size;i++){
x=易做图;
y=array[i+1];
//保证x>y
if(x < y){
temp = y;
y = x;
x = temp;
}
易做图 = get易做图(x,y);
}
//将每个数除以最大公约数,然后相乘
for(i=0;i<size;i++){
result *= array[i]/易做图;
}
//最后再乘以最大公约数
return result*易做图;
}
//获取最大公约数
int get易做图(int a,int b){
if(a%b == 0){
return b;
}else{
return get易做图(b,a%b);
}
}
int main(void){
int array[3] = {144,24,36};
int result = doLCM(array,3);
printf("%d\n",result);
return 0;
}
补充:软件开发 , C语言 ,