소수 출력하기
조회수 760회
int main(void)
{
int num = 0;
int* a = NULL;
printf(">양수 입력 : ");
scanf("%d", &num);
a = (int*)malloc(num-2);
search(a,num);
for (int i = 0; i < num-2; i++)
{
if(a[i-2] == 0) printf("X ");
else printf("%d", a[i-2]);
if (i+1 % 5 == 0) printf("\n");
}
}
void search(int*a ,int num)
{
for (int i = 2; i < num; i++)
{
for (int j = 2; j < i; j++)
{
if (i % j == 0)
{
a[i - 2] = 0;
break;
}
}
if (a[i-2] != 0)
a[i - 2] = i;
}
}
num
에 값을 입력받아 2
부터 num-1
값까지 소수값과 X(소수아닌 값)로 출력하고 싶었습니다. 5번째 마다 개행이 안되고 원하는 출력이 안나옵니다.
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
%도 나누기 연산이라 더하기 보다 우선순위가 높습니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력