[求助]求100-300之间所有素数的和
#include<stdio.h>main()
{
int i,j,a,s=0;
for(i=100;i<=300;i++)
{
a=0;
for(j=2;j<i;j++)
{
if(i%j==0)
break;
else a=1;
}
if(a) s+=i;
}
printf("s=%d",s);
}
这个有什么不对吗?
[此贴子已经被作者于2007-1-3 10:59:02编辑过]
----------------解决方案--------------------------------------------------------
没有定义a
----------------解决方案--------------------------------------------------------
改好了。答案是20000吗,怎么和标准答案有差错啊,标准的是23516
----------------解决方案--------------------------------------------------------
version 1:
#include<stdio.h>
main()
{
int a,i,j,s=0;
for(i=100;i<=300;i++)
{
a=0;
for(j=2;j<i;j++)
{
if(i%j==0){
a=0;break;}
else a=1;
}
if(a) s+=i;
}
printf("s=%d",s);
}
vesion 2:
#include<stdio.h>
main()
{
int a,i,j,s=0;
for(i=100;i<=300;i++)
{
a=1;
for(j=2;j<i;j++)
if(i%j==0){
a=0;
break;}
if(a) s+=i;
}
printf("s=%d",s);
}
----------------解决方案--------------------------------------------------------
#include<stdio.h>
void main()
{
int i,j,s=0;
for(i=100;i<=300;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0)
break;
}
if(j>=i)s=s+i;
}
printf("s=%d",s);
}
----------------解决方案--------------------------------------------------------