#include #include #include #include const MAX_PRIMES = 100010000; const SQRT_MAX_PRIMES = 10000; int main(int argc, char* argv[]) { bool* primes = calloc(MAX_PRIMES, sizeof(bool)); memset(primes, true, MAX_PRIMES); primes[0] = false; primes[1] = false; for( int i = 2 ; i < SQRT_MAX_PRIMES ; i++) { if(primes[i]) { for( int j = i*i ; j < MAX_PRIMES ; j+=i) { primes[j] = false; } } } size_t cnt = 0; for( int i = 0 ; i < MAX_PRIMES ; i++) if(primes[i]) cnt++; printf("Count is : %zu\n", cnt); }