永发信息网

学C有一道求小于100的所有质数并输出的题目 我写了个代码 但没有达到想要的效果 求指教 哪里出问题了

答案:3  悬赏:10  手机版
解决时间 2021-02-26 06:58
  • 提问者网友:缘字诀
  • 2021-02-25 22:14
main(){ int num,i,pd=1; for(num=1;num<=100;num++) { for(i=2;i<num;i++) { if(num%i==0) { pd=0; break; }} if(pd==1) printf("%d\n",num); } getch();}不考虑1的问题先
最佳答案
  • 五星知识达人网友:一袍清酒付
  • 2021-02-25 22:26
首先,if(num%i==0)之后,pd直接等于0,就是说出现一个非素数之后,所有的素数都输出不了
其次,for(i=2;i<num;i++)的上限可以改成sqrt(num),需要#include "math.h"
全部回答
  • 1楼网友:一把行者刀
  • 2021-02-25 23:47
main() { int num,i,pd=1; for(num=1;num<100;num++) { pd =1; for(i=1;i<=num;i++) { if(num%i==0) { pd++; } } if(pd>2) printf("%d\n",num); } getch(); } } getch(); } 不考虑1的问题先
  • 2楼网友:三千妖杀
  • 2021-02-25 23:35
#include<stdio.h> int main() { int num,i,pd=1; for(num=1;num<=100;num++) { pd=1;//初始化 for(i=2;i<num;i++) { if(num%i==0) { pd=0; break; } } if(pd==1) printf("%d\n",num); } getchar(); return 0; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯