190155801 发表于 2018-12-11 14:01:53

哪位鱼油能帮忙看一下

#include <stdio.h>
#include <math.h>

int main()
{
        int count = 4; //已知道2,3,5,7是素数;
        int i, j, k;
        int flag = 1;
       
        for(i = 9; i < 10000; i++)
        {
                k = (int)sqrt((double)i);
               
                for(j =2; j <= k; j++)
                {
                        if(i % j == 0)
                        {
                                flag = 0;
                                break;
                        }
                }
                if(flag)
                {
                        count++;
                }
                else
                {
                        flag = 1;
                }
        }
       
        printf("10000以内共有%d个素数!\n", count);
       
        return 0;
}

这个程序中的break事跳出if 还是for啊?

丶忘却的年少o 发表于 2018-12-11 14:11:52

跳出的是内层的 for !就是 for(j =2; j <= k; j++) 这个的

190155801 发表于 2018-12-11 15:05:35

OK 好的,谢谢
页: [1]
查看完整版本: 哪位鱼油能帮忙看一下