6-1 使用函數求素數和 (20分)


6-1 使用函數求素數和 (20分)
 

本題要求實現一個判斷素數的簡單函數、以及利用該函數計算給定區間內素數和的函數。

素數就是只能被1和自身整除的正整數。注意:1不是素數,2是素數。

函數接口定義:

int prime( int p ); int PrimeSum( int m, int n ); 
 

其中函數prime當用戶傳入參數p為素數時返回1,否則返回0;函數PrimeSum返回區間[m, n]內所有素數的和。題目保證用戶傳入的參數mn

裁判測試程序樣例:

#include <stdio.h> #include <math.h> int prime( int p ); int PrimeSum( int m, int n ); int main() { int m, n, p; scanf("%d %d", &m, &n); printf("Sum of ( "); for( p=m; p<=n; p++ ) { if( prime(p) != 0 ) printf("%d ", p); } printf(") = %d\n", PrimeSum(m, n)); return 0; } /* 你的代碼將被嵌在這里 */ 
 

輸入樣例:

-1 10
 

輸出樣例:

Sum of ( 2 3 5 7 ) = 17




int prime( int p )
{
 int i;
 if(p<2)
 return 0;
 for(i=2;i<=sqrt(p);i++)
 {
  if(p%i==0)
  return 0;
 }
 return 1;
 
}
int PrimeSum( int m, int n )
{
 int sum=0;
 int i;
 for(i=m;i<=n;i++)
 {
  if(prime(i))
  sum+=i;
 }
 return sum;
 
}


免責聲明!

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



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