題目內容:
我們認為2是第一個素數,3是第二個素數,5是第三個素數,依次類推。
現在,給定兩個整數n和m,0<n<=m<=200,你的程序要計算第n個素數到第m個素數之間所有的素數的和,包括第n個素數和第m個素數。
輸入格式:
兩個整數,第一個表示n,第二個表示m。
輸出格式:
一個整數,表示第n個素數到第m個素數之間所有的素數的和,包括第n個素數和第m個素數。
輸入樣例:
2 4
輸出樣例:
15
時間限制:500ms內存限制:32000kb
int n,m;
//第幾個素數
scanf("%d",&n);
scanf("%d",&m);
int sum=0; //記第N個素數到第M個素數的和
int a=0; //記錄第幾個素數
int j=2; //記錄第a個素數的值
do
{
int b=1;
for(int i=2;i<=(int)sqrt(j) ;i++)
{
if((j%i==0)&&j>2)
{
b=0; //執行則當前J不是素數
break; //跳出本次循環
}
}
if(b) // 為TRUE時,當前J為素數,則對A計數
{
a++;
if(a>=n && a<=m) //對在N到M個間的素數計入和SUM
{
sum=sum+j;
// System.out.println(j+","+a);
}
}
j++;
}while(a<m);
printf("%d\n",sum);
| 用例測試結果 |
運行時間 |
占用內存 |
提示 |
得分 |
| 用例1通過 |
1ms |
256kb |
|
1 |
| 用例2通過 |
13ms |
256kb |
|
1 |
| 用例3通過 |
1ms |
256kb |
|
1 |
| 用例4通過 |
1ms |
256kb |
|
1 |
| 用例5通過 |
1ms |
144kb |
|
1 |
提交答案
本次得分/總分:5.00/5.00分
