本题要求统计给定整数M和N区间内素数的个数并对它们求和。
输入格式:
输入在一行中给出两个正整数M和N(1≤M≤N≤500)。
输出格式:
在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。
输入样例:
10 31
输出样例:
7 143
在判断是否为素数的循环中如果从2开始除,遇到取余为零即可被整除的数即用break返回的方法时,会遇到m=1的测试点报错,所以用1开始的方法
#include<stdio.h>
int main()
{
int m,n,j,sum=0,k=0,a;
scanf("%d %d",&m,&n);
for(m;m<=n;m++){
int a=0;
for(j=1;j<=m/2;j++) //判断是否是素数,从1开始除,所以m如果是素数,则a=1,不是则循环
if(m%j==0){
a++;
}
if(a==1){
sum=sum+m;
k++;
}
}
printf("%d %d",k,sum);
return 0;
}