清如许 发表于 2022-12-18 00:37:25

大佬们麻烦看一下,为啥输出的一直是10000啊?

求10000之内有多少素数
#include<stdio.h>
#include<math.h>
int main()
{
        int i,j,c,d,sum;
        sum=0;
        for(i=1;i<=10000;i++)
        {
                d=sqrt(i);
                for(j=1;j<=d;j++)
                {
                        c=i%j;   
                        if(c!=0)
                        {
                                continue;
                        }
                        else if(c==0)
                        {
                                sum=sum+1;
                                break;
                        }
                }
        }
        printf("%d",sum);
}

jackz007 发表于 2022-12-18 07:04:01

本帖最后由 jackz007 于 2022-12-18 09:46 编辑

      j 从 1 开始循环,对于任何一个 i ,都会有 i % j = 0,因为,任何一个数都能被 1 整除,那么,就是说,任何一个 i 都会被直接判定为不是素数。

清如许 发表于 2022-12-18 12:07:15

jackz007 发表于 2022-12-18 07:04
j 从 1 开始循环,对于任何一个 i ,都会有 i % j = 0,因为,任何一个数都能被 1 整除,那么,就 ...

哦哦哦谢谢大佬
页: [1]
查看完整版本: 大佬们麻烦看一下,为啥输出的一直是10000啊?