開始刷題,感覺代碼量和基礎太渣了,導致數據結構不會,重頭慢慢刷吧~
1、題目
輸入樣例:
10 31
輸出樣例:
7 143
2、代碼
#include<stdio.h>
#include<math.h>
int isprime(int n){
int i,isprime=1;
if(n<2){
isprime=0;
}
else{
for(i=2;i<=sqrt(n);i++){
if(n%i==0){
isprime=0;
break;
}
}
}
return isprime;
}
int main(){
int M,N;
scanf("%d %d",&M,&N);
int i,cnt=0,sum=0;
for(i=M;i<=N;i++){
if(isprime(i)){
cnt++;
sum+=i;
}
}
printf("%d %d",cnt,sum);
return 0;
}
3、討論
難度不大的一道題,主要是考察關於素數的函數的寫法,記得判斷0和1的情況!當然不是素數。
另外,只要循環到根號自己就可以了,只要有情況就 break
,這樣效率最高!
妙啊!!!