阳树阳树
2021-08-21 10:34
采纳率: 78.9%
浏览 46

请问这个为什么不能够打出100以内素数?

img

图片转代码服务由CSDN问答提供 功能建议

for循坏.cpp 素数.cpp
1 #include<stdio.h> 选择C:UsersAdministratorDesktop100以内的素数.exe
 2 intmain()
3F
4 intxj
        intt 0cessexited after1.576seconds with return yalue 0
        intisprime=13 青校任意键继续
  白 for(x=1;x<=100x++)
9 for(t=2jt<xit++)1
16 if(x%t==)
                  isprime=0
                  breaki
15 白 if(isprime==1)
           printf("%d”×)3
        return 
  • 收藏

4条回答 默认 最新

  • 六年级初中生 2021-08-21 12:38
    已采纳

    把第六行的isprime=1
    放到第八行就好了
    因为每个数字都需要初始化,不然他就会一直是0

    已采纳该答案
    1 打赏 评论
  • 六年级初中生 2021-08-21 11:34

    为什么还要问一遍啊,不是解决了吗

    1 打赏 评论
  • 吴迦诺 2021-08-21 10:41

    我自己打的判断素数函数;

    bool sushu(int x)
    {
        for(int i=2;i<=sqrt(x);i++)
        {
            if(x%i==0) return 0;
        }
        if(x!=1)
            return 1;
        else return 0;
    }
    
    
    打赏 评论
  • 王福卓 wfz 2021-08-21 12:33

    去掉第十行的if语句中的大括号,把那个赋值语句移到break后面

    打赏 评论

相关推荐 更多相似问题