素数:
质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
例题:判断一个数在[a,b]之间的素数个数,以及素数的综合
C语言
#include <stdio.h> #include <math.h> int main() { int i,j; //i是控制m,n的范围,j是从2到i的开方寻找 int m,n; //输入取值范围m,n int sum1,sum2; //sum1代表素数的个数,sum2代表素数的和 /* * 思想是判断素数;当然判断一个数不是素数要比判断一个数是素数容易,所以设起始素数变量为1 * 如果不是素数就变为0 * 还有一点要注意1不是素数,所以如果起始是1时,我们可以把它变成下一个数,即2 */ scanf("%d %d",&m,&n); if(m==1) m=2; for(i = m;i <= n; i++) { int isPrime = 1; for(j = 2;j <= sqrt(i); j++) { if(i%j==0) { isPrime = 0; break; } } if(isPrime) { sum1++; sum2+=i; } } printf("%d %d",sum1,sum2); }