计算1至3000范围内所有质数的加和

请根据以下要求,编写一段C程序代码:请计算1至3000范围之内所有质数的加和,并输出到屏幕。(不允许使用math.h头文件)

#include <iostream>

using namespace std;

bool isPrime(int x)
{
    if (x <= 1) return false;

    // 判断是否被2~自身数-1范围内的值整除
    for (int i = 2; i < x;++i){
        if (x%i == 0)
            return false;
    }
    return true;
}

int main()
{
    int range = 3000;
    int sum = 0;
    for (int i = 1; i <= range; ++i){
        if (isPrime(i))
            sum += i;
    }

    cout << sum << endl;

    return 0;
}

 

#include<stdio.h>

int main()
{
	int sum = 1, i;
	for (int j = 1; j <= 3000; j++)
	{
		for (i = 2; i < j; i++)
		{
			if (j % i == 0)
			{
				break;
			}
			else if (i==(j-1))
				sum += j;
		}

	}
	printf("%d", sum);
	getchar();
}