Code

[C Programming] 에라토스테네스의 체

BIGFROG 2020. 1. 9. 18:38
/*

==================

에라토스테네스의 체

==================

*/

#include <stdio.h>

#include <stdlib.h> // malloc,free

#pragma warning(disable:4996)



int main() {

	int i, j, k;

 	int num;



	scanf("%d", &num);



	int *prime = malloc(sizeof(int) * num); //(int크기)x(num크기)만큼 동적메모리 할당



	for (i = 2; i <= num; i++)
 		prime[i] = 1;



	for (j = 2; j <= num; j++) {
 		for (k = 2 * j; k <= num; k = k + j) {
 			prime[k] = 0;
 		}
	}



	for (i = 2; i <= num; i++) {
 		if (prime[i] == 1)
 			printf("%4d",i);
	}
}