题目思路——统计素数并求和
统计素数并求和
本题要求统计给定整数M和N区间内素数的个数并对它们求和。
输入格式:
输入在一行中给出两个正整数M和N(1≤M≤N≤500)。
输出格式:
在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。
实验代码:
#include<stdio.h> #include<math.h> int main() { int m , n , sum=0 , count=0 , i , x ; scanf("%d %d",&m,&n); if(m == 1) //1不是素数,排除m=1的情况 { m = 2; } for(x=m; x<=n; x++) { for(i=2; i<=x; i++) { if(x == 2) //计算x=2时的特殊情况 { count++; sum += x; break; } if(x % i == 0) { break; } if(i>sqrt(x)) //当存在i小于根号x时,证明x为素数 { count++; sum += x; break; } } } printf("%d %d",count,sum); return 0; }