永发信息网

筛法求100内素数 哪里有错?

答案:1  悬赏:10  手机版
解决时间 2021-02-02 04:13
  • 提问者网友:凉末
  • 2021-02-01 23:25
筛法求100内素数 哪里有错?
最佳答案
  • 五星知识达人网友:玩家
  • 2021-02-02 00:04
你的C语言筛法求100内素数的程序有一个小问题,就是在输出时if(a[j]==0);printf(" %d",j);,在if(a[j]==0);后面多了一个分号,把分号去掉,变成if(a[j]==0)程序就出正确结果了.
完整的C语言程序如下(改动的地方见注释)
#include "stdio.h"
#include "math.h"
#define N 101
int main(void)
{
 int a[N];
 int k , d = 2;
 int i ,j;
 for(i=2;i a[i]=0;
 for(d=2;d {
 k=d;
 if(a[k]==0)
 k=k+d;
 while(k {
 a[k]=1;
 k=k+d;
 }
 }
 for(j=2;j {
 if(a[j]==0)  //这里if(a[j]==0);去掉后面的分号
 printf(" %d",j);
 }
 return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯