算法---判断101-200之间有多少个素数,并输出所有素数。
2017-11-05 14:56
447 查看
算法—判断101-200之间有多少个素数,并输出所有素数。
题目:判断101-200之间有多少个素数,并输出所有素数。程序分析:首先明白什么是素数,只能被1和本身整除的数,用循环遍历101-200之间的数,然后用101~200间的书整出2到该数前面一个数,比如是113,我们113整除2~112之间的数,只要这里的数整出都不等于0,则可以判断这个数是素数;
#include <stdio.h> int main() { int i,j; int count=0; for (i=101; i<=200; i++) { for (j=2; j<i; j++) { // 如果j能被i整出在跳出循环 if (i%j==0) break; } // 判断循环是否提前跳出,如果j<i说明在2~j之间,i有可整出的数 if (j>=i) { count++; printf("%d ",i); // 换行,用count计数,每五个数换行 if (count % 5 == 0) printf("\n"); } } return 0; }
另一种是用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 这种方法效率更高,循环的次数更少。
#include <stdio.h> #include <math.h> int main() { int i,j,k,leap=1; int count=0; for (i=101; i<=200; i++) { k=sqrt(i+1); //只需要判断2到sqrt(这个数)这个范围类的就行 for (j=2; j<=k; j++) { if (i%j==0) { leap=0; break; } } if (leap) { count++; printf("%d ",i); if (count % 5 == 0) printf("\n"); } leap=1; } return 0; }
相关文章推荐
- 判断101-200之间有多少个素数,并输出所有素数
- 判断101-200之间有多少个素数,并输出所有素数。
- 判断101-200之间有多少个素数,并输出所有素数及素数的个数
- C语言实例6—判断101-200之间有多少个素数,并输出所有素数。
- 判断101-200之间有多少个素数,并输出所有素数。
- 判断101-200之间有多少个素数,并输出所有素数。
- 经典c程序(0008)--判断101-200之间有多少个素数,并输出所有素数
- 006-题目:判断101-200之间有多少个素数,并输出所有素数。
- 判断101-200之间有多少个素数,并输出所有素数。
- 【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。
- 题目:判断101-200之间有多少个素数,并输出所有素数。
- 判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。
- 【程序2】判断101-200之间有多少个素数,并输出所有素数。
- [Java]练习题002: 判断101-200之间有多少个素数,并输出所有素数
- 判断101-200之间有多少个素数,并输出所有素数。
- 判断101-200之间有多少个素数,并输出所有素数。
- 判断101-200之间有多少个素数,并输出所有素数(python实现)
- java中判断 101-200 之间有多少个素数,并输出所有的素数
- 判断101-200之间有多少个素数,并输出所有素数
- 判断101-200之间有多少个素数,并输出所有素数