test 4.1 素数和(5分)

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

题目内容

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

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

输入格式

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

输出格式

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

输入样例

2 4

输出样例

15

限制

时间限制:500ms
内存限制:32000kb

代码实现

C语言

#include<stdio.h>

int main() {
    int n;
    int m;
    scanf("%d %d", &n, &m);

    int cnt = 1;
    int sum = 0; 
    for (int digital = 2; cnt < m+1; digital ++) {  
        int isPrime = 1;
        for (int i=2; i<digital; i++) {
            if (digital % i == 0) {
                isPrime = 0;
                break;
            }
        }
        if (isPrime) {
            if (cnt >= n){
                sum += digital;
            }
            cnt ++;
        }       
    }

    printf("%d", sum);
    return 0;
}