求最大公约数最小公倍数
/*求n个数的的最小公倍数,这里运用了辗转相除法*/#include <stdio.h>int gcd(int a,int b) //最大公约数算法{ if(a%b==0) return b; else return gcd(b,a%b);}int lcm(int a,int b) //最小公倍数(两数相乘后除以最大公约数){ return a/gcd(a,b)*b; //注意先除后乘,否则会造成结果过大}int main(){ int i,repeat,n,a,min; scanf("%d",&repeat); while(repeat--) { scanf("%d%d",&n,&min); for(i=1;i<n;i++) { scanf("%d",&a); min=lcm(a,min); //逐个求最小公倍数,又避免了定义数组(不知道数组长度) } printf("%d\n",min); } return 0;}