如果要输出一个素数,首先要判断它是不是素数。大家都知道素数是只能被1和它本身除尽的数,1既不是素数也不是合数,2是最小的素数同时也是唯一一个是偶数的素数,所以要判断一个数是不是素数,我想到了三种方法。
假设这个数为a
法一:让a依次和2到a-1相除,如果a不能被2到a-1之间的任何一个整数整除,则a为素数;
法二:让a依次和2到a/2相除,如果a不能被2到a/2之间的任何一个整数整除,则a为素数;
法三:让a依次和2到sqrt(a)相除,如果a不能被2到sqrt(a)之间的任意一个整数整除,则a为素数;
由于法一效率比较低,就在此不写了。下面我写出了两种方法:
法二:
#include<stdio.h > int main()//求100到200以内的素数; { int i, j,n=0; for (i = 100; i <= 200; i++) { for (j = 2; j <= i / 2; j++) { if (i%j == 0) { break; } } if (j>i/2) { printf("%d ",i); n = n + 1; if (n%5==0) printf("\n"); } } return 0; } 法三: #include<stdio.h> #include<math.h> int main() { int i,j,k,n=0; for(i=100;i<=200;i++) { k=sqrt(i); for(j=2;j<=k;j++) { if(i%j==0) { break; } } if(j>k) { printf("%d ",i); n=n+1; if (n % 5 == 0) printf("\n"); } } return 0; }