所以,一切似乎都运行良好,但程序并没有给我正确的答案。我的是 142,915,960,832,而应该是 142,913,828,922。差值是 2,131,910(如果我仍然可以在纸上减去数字哈哈),我不知道我从哪里得到这 200 万。有人可以帮我吗?
#include <stdio.h>
#include <math.h>
#define BELOW 2000000
int isaprime (int num);
int main (void) {
    int i;
    float sum = 0;
    for (i = 2; i < BELOW; i++) {
            if (isaprime(i) == 1) {
                    sum = sum + i;
                    printf ("\n%d\t%.1f", i, sum);
            }
    }
    getch();
    return 0;
}
int isaprime (int num) {
    int i;
    for (i = 2; i <= sqrt(num); i++) {
            if (num % i == 0) {
                    return 0;
            }
            else {
                    ;
            }
    }
    return 1;
}