統計素數並求和(C語言)


練習4-11 統計素數並求和 (20 分)
 

本題要求統計給定整數M和N區間內素數的個數並對它們求和。

輸入格式:

輸入在一行中給出兩個正整數M和N(1MN500)。

輸出格式:

在一行中順序輸出M和N區間內素數的個數以及它們的和,數字間以空格分隔。

輸入樣例:

10 31
 

輸出樣例:

7 143

分析:此題明顯有判斷素數的環節,而判斷素數只需要遍歷到sqrt(n)即可。

C語言代碼如下:

 1 #include <stdio.h>
 2 #include <math.h>
 3 int main(){
 4     int m, n, i, sum = 0, count = 0;
 5     scanf("%d %d", &m, &n);
 6     for(m; m <= n; m++){
 7         for(i = 2; i <= sqrt(m); i++){
 8             if(m % i == 0)
 9                 break;
10         }
11         if(i > sqrt(m)){
12             if(m == 1)
13                 count = count;
14             else{
15                 sum += m;
16                 count++;
17             }
18         }
19     }
20     printf("%d %d\n", count, sum);
21     return 0;
22 }

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM