//소수(prime number) 계산 프로그램
#include <stdio.h>
#include <stdlib.h>
void data_print(int* pi);
void data_align(int* pi);
int num; //전역변수로 사용
int main(void)
{
printf("> 양수 입력: ");
scanf("%d", &num);
int* pi = (int*)malloc(sizeof(int) * (num - 1));
data_align(pi);
data_print(pi);
free(pi);
return 0;
}
void data_align(int* pi)
{
int i, j;
int k = 0;
if (num == 2) pi[k] = 2;
else
{
for (i = 2; i <= num; i++)
{
for (j = 2; j < i; j++)
{
if (i % j == 0) break;
}
if (i == j)
{
pi[k] = i;
}
else
{
pi[k] = 88;
}
k++;
}
}
}
void data_print(int* pi)
{
int cnt = 0;
for (int k = 0; k < (num - 1); k++)
{
if (pi[k] == 88) printf("%5c", pi[k]);
else printf("%5d", pi[k]);
cnt++;
if (cnt % 5 == 0) printf("\n");
}
}
'프로그래밍 언어 > C언어' 카테고리의 다른 글
혼자공부하는C언어_도전실전예제_Chapter17 (1) | 2024.02.12 |
---|---|
에라토스테네스의 체(소수구하기) (0) | 2024.02.12 |
혼자공부하는C언어_도전실전예제_Chapter15 (1) | 2024.02.11 |
혼자공부하는C언어_도전실전예제_Chapter14 (0) | 2024.02.11 |
혼자공부하는C언어_도전실전예제_Chapter13 (0) | 2024.02.11 |