编译器错误(预期')'之前';'令牌)并且不在循环内打破

时间:2014-01-16 19:50:56

标签: c loops compiler-errors break

我一直在收到以下错误,我不知道该怎么做。如果它错了,我不确定我是否没有看到错字。我在一个网站上发现了这个代码,并希望在一个更大的程序中实现它,但我严重陷入困境。

test.c: In function ‘main’:
test.c:10:9: error: expected ‘)’ before ‘;’ token
test.c:15:4: error: break statement not within loop or switch 

非常感谢任何帮助。

#include <stdio.h>


int main()
{       
    int n, i, count=0;

    printf ("Enter a positive number: ");
    scanf ("%d", &n);
    if (i=2; i<=n/2;i++)
    {
            if(n%i==0)            //line 10
            {
                    count++;
                    break;       //line 15
            }
    return 0;
    }       
    if (count==0 && n!=1)
            printf("%d is a prime number",n);
    else
            printf("%d is not a prime number",n);
    return 0;
                                                          1,1           Top
}

1 个答案:

答案 0 :(得分:3)

if (i=2; i<=n/2;i++)

需要是for循环

for (i=2; i<=n/2;i++)

前者在语法上是不正确的。