Home > Study > C Language > C task > [ex32] 소수 인쇄하기

[ex32] 소수 인쇄하기
Study Language

문제 설명


1부터 입력 받은 값 n(n > 1) 까지의 소수를 모두 인쇄하는 함수를 설계하라.

  • 리턴은 없고 int를 받으면 그 사이에 있는 소수는 모두 인쇄하는 함수를 설계한다.
  • 소수(prime number): 1과 자기 자신으로만 나누어지는 수
  • 2부터 (자기-1)까지 값으로 계속 나누어가면서 나머지 0인 값이 나오면 소수가 아니다.

입력 설명


숫자를 한 개 입력 받는다.

출력 설명


값을 출력 예시와 같이 출력한다.

입력 예시


11

출력 예시


2 3 5 7 11

정답 코드


#include <stdio.h>

void Print_Prime(int max)
{
	int i, j, k;

	for (i = 2; i <= max; i++)
	{
		k = 0;

		for (j = 2; j < i; j++)
		{
			if ((i % j) == 0)
			{
				k = 1;
				break;
			}
		}

		if (k == 0)
		{
			printf("%d ", i);
		}
	}
}

void main(void)
{
	int n;

	scanf("%d", &n);
	Print_Prime(n);
}

메모


printf 내부의 \n 습관화 필요