我这个代码哪里错了啊,系统显示编译错误,我看不出来啊,求大佬帮助
#include
using namespace std;
int IsPrime(int x);
int main()
{ int i,n,m=0,k=0;
scanf("%d",&n);
for(i=2;i<=n;i++)
{
m=IsPrime(i);
if(m==1)
{
k+=i;
}
}
printf("sum=%d\n",k);
return 0;
}
int IsPrime(int x)
{
int i,n=1;
for(i=2;i<x;i++)
{
if(x%i==0)
n=0;
}
return n;
}