none
c语言求看看bug:求500-800的素数个数与所有素数的间隔和差 RRS feed

  • 问题

  • #include<stdio.h>
    #include<math.h>
    using namespace std;
    int cnt=0;
    int main()

     int i,j,s,sum=0,flag;
     s=-1;
     for(i=500;i<=800;i++)
     {
     for(j=2;j<=i;j++)
     {if(i%j==0){
     flag=0;break;}
     else flag=1;}

     switch(flag)
     {case 0:continue;
     case 1:{cnt=cnt+1;
          s=s*s;
       sum+=s*i;
         }
         }

    }
     printf("%d%d",cnt,sum);
    }

    为啥这样输出永远是0?当我定义cnt和sum的初始值为4,输出又是4?编了10min,调试了1h,快疯,求大神解答

      
    2020年10月2日 17:13

全部回复