求大神帮我看一下下边程序哪里出错了?输出整数x到y之间的所有素数.输入100,200,结果如下:

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 16:24:09

求大神帮我看一下下边程序哪里出错了?输出整数x到y之间的所有素数.输入100,200,结果如下:
求大神帮我看一下下边程序哪里出错了?输出整数x到y之间的所有素数.


输入100,200,结果如下:

求大神帮我看一下下边程序哪里出错了?输出整数x到y之间的所有素数.输入100,200,结果如下:
问题好多.
1、x%2==0 不成立的分支中应有初值 i=x
2、两个内层循环的终止条件 j<=i 应为 j<i
3、两个内层循环后的判断应为 j==i
4、两个关于换行的判断 if (k%10==0) 应移动到上一分支块内
这里是个整理后的代码:



void main(void)
{
  int x, y, i, j, k;
  scanf("%d,%d", &x, &y);
  for (i=x+!(x&1); i<=y; i+=2)
  {
    for (j=2; j<i; ++j)
      if (i%j==0)
        break;
    if (j==i)
    {
      printf("%4d", i);
      ++k;
      if (k%10==0)
        printf("\n");
    }
  }
}