sinat_36893695
halff_
2017-01-24 16:07
采纳率: 100%
浏览 2.0k
已采纳

【新人求问】c语言,求最最小公倍数

以下是我的代码,提交不通过(显示wrong answer),是这种方法不行吗?
图片说明

#include<stdio.h>
int main(int argc, char* argv[])
{
    int n;  //一组中数的个数 
    int s[1000];
    int i;
    int x;  //用于存储一组数中的最大数 
    while (scanf("%d",&n)!=EOF)
    {
        x = 0
        for (i = 0; i < n; i++)
        {
            scanf("%d",&s[i]);
            if (s[i]>x)
                x = s[i];
        }
        while(1)
        {
            for (i = 0; i < n; i++)
            {
                if (x%s[i]!=0)
                    break;
            }
            if(i >= n)
                break;
            x++;
        }
        printf("%d\n",x);
    }
    return 0;
}
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • caozhy
    已采纳

    修正后在线编译正确

    http://ideone.com/rujbTf

    点赞 评论
  • caozhy

    最大公倍数是什么,只有最大公约数最小公倍数,你到底算什么。这是其一,其二,你的oj约定的输入输出格式,对于时间空间的限制、最大数据规模,输入数据范围等是什么也没说。

    点赞 评论
  • caozhy

    x = 0 这里少一个分号

    点赞 评论
  • zuoside__lord
    跃I.0 2017-01-25 01:56

    32位的整数需不需要修改下输出的整数范围,修改成long long int 比较稳妥,没有看具体代码,,

    点赞 评论
  • LeeKitch
    Kadxs 2017-01-25 05:43

    经过调试发现你的for语句前面好像少了;

    点赞 评论
  • smtctc
    wuxxd 2017-01-25 07:26

    题目要求最小公倍数,你这代码是求了最大公约数了吧

    点赞 评论

相关推荐