菜鸟求救。求N个数的最小公倍数
http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=1070
描述
求n个数的最小公倍数。
输入
输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数。
输出
为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个32位的整数。
样例输入
2 4 6
3 2 5 7
样例输出
12
70
[解决办法]
你的错误是什么?可以说详细一点吗?
[解决办法]
你的错误是什么?可以说详细一点吗?
[解决办法]
#include<stdio.h>
int gcd(int m,int n)
{
int r;
while(r=m%n)
{
m=n;n=r;
}
return n;
}
int main ()
{
int n,i,a[10000],s;
while(printf("输入多少个数字:"),scanf("%d",&n),n>0){
s=1;
for(i=0;i<n;i++)
{
printf("输入一个数字:");
scanf("%d",&a[i]);
}
s=(a[0]*a[1])/gcd(a[0],a[1]);
for(i=2;i<n;i++)
{
s=(s*a[i])/gcd(s,a[i]);
}
printf("%d\n",s);
}
return 0;
}
试一下我修改的这个,你要两个两个的求,也就是说先求前两个,再以求的数字作为一个新值与下一个数字进行,依次类推即可得出答案。
[解决办法]
[解决办法]
while(scanf("%d",&n)!=EOF){ if(n<=0) break;}
[解决办法]
最后又少了个分号