Loading... <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-102ce7c75ef20a29ac427695714066ad88" aria-expanded="true"><div class="accordion-toggle"><span style="">素数概念</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-102ce7c75ef20a29ac427695714066ad88" class="collapse collapse-content"><p></p> 简单通俗来说:只能被1和本身整除 <p></p></div></div></div> <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-1f6441649b78a031a26e9e33105ff74940" aria-expanded="true"><div class="accordion-toggle"><span style="">思路:</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-1f6441649b78a031a26e9e33105ff74940" class="collapse collapse-content"><p></p> 使用for循环进行逐一排查;for循环中,再使用监督语句if,如果不符合条件,直接break,跳出for循环。 最后for循环外面if判断,输出素数。 <p></p></div></div></div> ```cpp #include<stdio.h> #include<math.h> int main() { int m , n,k ; for(m=100;m<200;m++){ k=sqrt(m); //因为一个比根号值大的数只可能和比根号值小的数同时成为因子,所以就只需要计算到比较小的那个数就够了。 for(n=2;n<=k;n++){ if(m%n==0) { break; } } if(n>k) //n>k;因为当最终不满住条件n<=k时,才能排出得出素数。 { printf("%d此数为素数\n",m); } } } ``` 最后修改:2021 年 05 月 03 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果文章有用,请随意打赏。