code1
#include<stdio.h>
#include<math.h>
int f(int a){
int i,ret=1;
if(a==1)ret=0;
else{
for(i=2;i<=sqrt(a);i++){
if(a%i==0){
ret=0;
break;
}
}
}
return ret;
}
int main(){
int i,m,n,cnt=0,sum=0;
scanf("%d %d",&m,&n);
for(i=m;i<=n;i++){
if(f(i)){
cnt++;
sum+=i;
}
}
printf("%d %d\n",cnt,sum);
return 0;
}
常规做法,设一个分辨是否为素数的函数。是素数,则计数、求和。
code2
#include<stdio.h>
int main(){
int i,j,m,n;
scanf("%d %d",&m,&n);
int a[n];
a[1]=0;
for(i=2;i<=n;i++){
a[i]=1;
}
for(i=2;i<=n;i++