素数和

Posted 读你一世

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了素数和相关的知识,希望对你有一定的参考价值。

 

题目内容:

我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。

现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。

 

输入格式:

两个整数,第一个表示n,第二个表示m。

 

输出格式:

一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。

 

输入样例:

2 4

 

输出样例:

15

  1. #include <stdio.h>  
  2.   
  3. int main(){  
  4.     int n, m;  
  5.     int i, j, o = 2;//o表示第几个素数  
  6.     int flag = 0;//用于标记非素数   
  7.     int sum = 0;//sum表示所求素数总和   
  8.     do  
  9.     {  
  10.         scanf("%d%d",&n,&m);  
  11.     }  
  12.     while(n<=0||m<n||m>200);   
  13.     if(n==1)  
  14.     sum+=2; // 第一个素数为2 sum+2;  
  15.     for(i=3;;i++)  
  16.     {  
  17.         flag = 0;  
  18.         if(o>m){  
  19.             break;  
  20.         }  
  21.         for(j=2; j<i; j++){  
  22.             if(i%j == 0){  
  23.                 flag=1 ;//判断是否非素数   
  24.                 break;  
  25.             }  
  26.         }  
  27.         if(flag == 0){  
  28.             if(o>=n){  
  29.                     sum+=i;//判断是否在第n个素数到第m个之间      
  30.                 }  
  31.             o++;  
  32.         }  
  33.     }  
  34.     printf("%d\n",sum);  
  35.     return 0;  
  36. }  

 

以上是关于素数和的主要内容,如果未能解决你的问题,请参考以下文章

素数和

素数和

中国大学MOOC-C程序设计(浙大翁恺)—— 素数和

拼接素数

区间内的真素数

分拆素数和(素数打表)