Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

EJ 정보컴퓨터 연도별 기출문제

본 자료는 본인이 직접 기출문제를 풀며 작성한 답안입니다.

따라서 본 저작권은 dmlwjd21@hanmail.net에게 있으며,

본 자료의 불법 복제, 양도, 판매를 금지합니다.

혹시 dmlwjd21@hanmail.net 외 다른 경로로 파일 거래되는


것을 발견하실 경우, 위 이메일로 연락주시면 감사하겠습니다.
⑦ 삭제

⑦ 과학 1
기술기정 1정보

④ 전문교과 ㅍ

7
-

2 -

E -

L
7 0 6
int partition(int a[], int n, int p, int q) {
int v = a[p], i, j, t;
i
i = p; 남 : →
j = q + 1; i i s ; ← ; ;
79
0 1 2 3 4 5 6
do {
int create(char *pathname);
pathname
do 34 7665 15 1000

i++; 3229 4387


while (a[i] < v);
create()
do
j--;
; ; ; ;
pathname while (a[j] > v);
if (i < j) {
y → i y i → ;
5

79
0 1 2 3 4 6
t = a[i];
제29 1$ 8/7 76 43 1000
void remove(char *pathname); a[i] = a[j];
pathname a[j] = t;
15
3265

8773
}
} while (i < j);
a[p] = a[j];
a[j] = v;
void enterCS(char *pathname) { return j;
while (create(pathname) == ) }
; H 임계영역에 다른것이 있으면 7
대기 O 6
} void quicksort(int a[], int n, int p, int q) {
int j;
void exitCS(char *pathname) { if (p < q) {
; " 임계영역 삐져나오면 j = partition(a, n, p, q); 113
} print(a, n); 요값
삭제
printf("%d ", j); Q (a 7.0.6 ). =
3
quicksort(a, n, p, j - 1);
1) = 6
enterCS() exitCS() quicksort(a, n, j + 1, q);
} E Q19.7.0.2) Q19.7.4.6)
} ^

QCA7.0.700.7.2.27/1
enterCS() exitCS()
O =

Q6.7.4.5) Qㅴ 7.7) .

partition(a, n, p, q) a[q+1] a[p] "

a[q] 4
print(a, n) a[0] a[n-1]
mi 6 〕
/* */
enterCS("file1");
/* */
a {43,87,15,32,29,76,65,1000}
exitCS("file1");
quicksort(a, 7, 0, 6)
/* */

a {43,87,15,32,29,76,65,1000}
quicksort(a, 7, 0, 6)
⑦ -1
15.43.87.76.65
몸32.29
.

④ Remote ( path name ) 15.29.32.43.87.76 65 ,

④ 3.2.0.6.4
malloc(size) size

#include <stdio.h>
이 2 34 56

#include <stdlib.h> a 2 451630


malloc()

int a[] = {2, 4, 5, 1, 6, 3, 0};


b 2 8 3
int *rCount(int *a, int low, int high, int d) { rCount()

o ono
int i;
int *p = malloc(d * sizeof(int));
3
for (i = 0; i < d; i++) 1 2
O
4
p[i] = 0; P 이 O 0 7
2 8
for (i = low; i <= high; i++) 2 5 에

p[a[i] % d]++; 5 배열 b 의 l wrhigh 범위에 해당하는 값을 3 으로 나눈


에 0

return p;
} 나머지인 0 ,
1 ,
2의 개수
5 6
int linkCount(int s, int t) {
int nlinks = 0;
while (s != t) {
s = a[s];
nlinks++; 속요
}
return nlinks; 114
}
4
int f(int x) {
static int id = 2;
id = a[id];
return id + x; 11S 1
}

59
int g(int x) {
static int val = 3;
return val += x; Va = 3 + 5 =
8
}
Va = 8+ 7

int main(void) { 이 2 3 4 5 6 7 8 9 10

int b[] = {12,19,15,26,29,21,14,32,17,22,23}; b 12 19 1526 292 지 14 32 17 22 23

int *p = rCount(b, 2, 8, 3); ac . 2 % 3 . 0 2 2 0 2 2 2

printf("%d ", p[2]); 115


printf("%d ", linkCount(5, 6));
114
g(5);
printf("%d ", g(f(4)));
1117
return 0;
}
1 : N

Mi N LOAD, 0, 1000 ACE 2000


INCR A ( ← 2001
STORE, 1, 1004 M E2004352001

① 공급 ( 도서변화 서점번호* ,
수량 )
,

20 도서 ( 도서번호 도서이름단가
. ,
출판사번호의
서점 ( 서점번호 서점이름, )
2004 2001
출판사 ( 출판사번호출판사이름 .
시 수동 ) .

장점 : 주소길이가 전체 메모리 길이와 동일하므로 주소 범위를 확장하여 사용할 수 있다

단점 : 2번의 메모리 접근으로 메모리에 접근하는 시간이 오래 걸린다


need.pl 2 1 20 1

R 1 0 0 1 1
P3 1 0 1 3 1
P4
02010-P5
100th

11 12

13

( 2.0 1.3.1 )
,

가용 벡터

P3 , P4

② .
( 2.0.1.1.1 )

P2 B
( 2.0.0.2.1 ) →
( 5.1 1.3.1 ) ,

( 6.2.1.4.1 )

T ( 7.2.2.4.1 ) ...

미 14 1 20 110
R 1 0 0 1 1
P3 1 0 1 131
P4 020t-0
P5 Iootze

① ( 1.0.0.2.0) → 거절
② ( 2.0.0.0.1 ) → 거절
③ 반환후 ( 2.0.1.3.1 )

① ( 1.0 1.3.0 )
→ 또거절
,

② ( 2.0.1 , 1.1 ) ...


승인
④ 오류
b
Inner
A> 1 =

b# 1

G1

A
=
4 at 4
von

E3

⑦ 지각적 주의집중 탐구적 주의집중


, ,
다양성

⑤ 파지 '

학습한 내용이 머릿속에 기억되고 재생됨

and at 4 ④ l ② 젆 i 학습한 내용이 다른 학습에 영향을 미치는 현상


⑦ Ka

⑤ 4 ② bㅖ
init()

#define N 5
typedef struct node *NODE;
struct node {
int w; /* */
NODE lc, rc; /* */
NODE next; /*
*/
};
NODE list = NULL; /* */ newnode()
least() list
/* ( ) */
NODE least() { insert() list
NODE t;
if (list == NULL)
return NULL;
t = list;
list = list->next;
return t; 44. 8
}
insert()
/* ( ) */
void insert(NODE t) {

8 d-snext.tt
NODE pt, old; 01
if (list == NULL || t->w < list->w) {
t->next = list;
list = t; 化二叱 → ne
} else {
old = list;
pt = old->next;
while (pt != NULL && pt->w < t->w) {
old = pt;
t. 44
pt = pt->next;

別 ^
}
;
; 1 7
}
縣冗 27

of
}

int main(void) { a is
int i;
NODE pt;
init(); /* */ 4^5
for (i = 1; i < N; i++) {
pt = newnode();
pt->lc = least();
44 17-8 9-4-5-27
-
12-15
pt->rc = least();
-
-

pt->w = (pt->lc)->w + (pt->rc)->w; cher


von

insert(pt);
}
return 0;
}
1 1 01 1 1 01

#include <stdio.h>
#define N 6

1 1 10 0 l ㅇㅇ
int main(void) {
int i;
int total = 0;
char word[N + 1]; Word
ㅡㅡ
struct Computer_Subjectsu-bi.is
{ Score
(S [ 이 P 8
char subject[20];
II] Y 90
int score; 다] t 80

} CS[] = {{"Programming", 80}, Es h 90


대 〕 0
8
{"System_Analysis", 90}, [ ㅁ 97

06
{"Database", 80}, {"Architecture", 90},
{"Network", 80}, {"Internet", 90}};
1 , 1 0,0
,
for (i = 0; i < N; i++) {
word[i] = CS[i].subject[i]; $ Word배열에 삽입
total += CS[i].score; Heat feet 8+90 1 ,
1 ,
1 1
,

} 510
=

word[i] = '\0';
printf("%s %5.2f", word, (float)total / N);
return 0;
}

답 : Python 85.00
1 ,
1의 개수가 홀수개이기 때문이다

INF ,
5개

G Et 呵茄
( B FD ) R2 ( RG) R3 (R 1
A B) )
. .

R4 ( AE ) R5 ( EC )
s divConq()
dynaProg() s n sn divConq(n) dynaProg(n) s n sn
int
n sn

malloc(size) size

n 일때
sn n 일때 free(p)
sn sn n ≥ 일때 p
malloc()

int divConq(int n) { /* */
if (n <= 2) divConq(6)
return n; divConq(1) 3번
return divConq(n - 1) + divConq(n - 2) + 3; divConq()
} dynaProg() 배열에

⑦ S 대 ] = n
,
값을 중복하여 호출하지 않고짤능된 값을 사용
int dynaProg(int n) { /* */
dynaProg(6)
int i, sn, *s;
if (n <= 2)
4번
return n;
s = (int *)malloc((n + 1) * sizeof(int));
for (i = 1; i <= n; i++)
s[i] = 0;
sn = recur(s, n);
free(s);
return sn;
} di v ( 6 )
1
int recur(int *s, int n) {
if (s[n] == 0) { di v ( 5) + di v ( 4) 1-3
if (n <= 2) '
l
( 3) + dir ( 2)

+31
; dir
d N int dir (3) t 3
else
s[n] = recur(s, n - 1) + recur(s, n - 2) + 3; ⑤ ↳②

dir

divpt32.tn
} (3자
return s[n];
}
+ dir ( 1자3
. in
2 1
양산 결합과 개선 자유개진
,
,
,

비판금지

⑦ 정보의 구조화

④ TGT
.
진단평가를 통해 학습자 수준을
파악한 후 학습자 수준을 토대로 이질적

팀구성을 한 후 같은 수준을 찐 학습자끼리

게임을 하기 위함이다

⑤ 최대한 많은 아이디어
문제해결과 프로그래밍

문제 해결 학습

.
특정 구간 안에서 무한루프가 발생한다

우수법을 이용하여 무한루프가 발생하는


부분의 표지판을 수정하도록 한다


접근제한조치 복제방지
,
조치

저작자 표시 .
비영리 . 동일조건 변경 허락 ,
변경 금지

b.ec d

혼잡뮌도크기가 1부터 지수증가하고 있다


참조비트
먜 3 1 06 4 1 36 0 8 6 0 4
5 "

fi
31 0 1

2 1 1
셰 새
09
7

6
3옸 g
¥

02 14

P
ㅡㅡ
10

d
-

6번

6.0.3.8

⑦ ALL

' '
2348.4176
7
1324 →
( 1
,
300 ) → (2.300 ) → 2348
' ' yen
' ' 417644.80) ← ( 5.80*5200
' ' wm

0. 가입릴레이션에서 D3을 참조하고 있어


NO ACTION 조건에 따라 연산이 거절된다
addQ() modifyQ() get_Min() x
x P f(x)
P S x f(x) P
x
search(Gr, S, G) {
Q
/* Gr : , S: , G: */
print(v) v
Q = {}; /* Q : */
addQ(x, v, Q) Q x
Visited = {}; /* Visited : */
addQ(S, NULL, Q); x x v
/* */ x
while (1) { f(x) v NULL x
if (Q ) { /* */ ([x], f(x)) x C v A v
print("not found"); [S A] x ([S A C],
exit(1); f(C))
} get_Min(Q) Q f
v = get_Min(Q); /*
Q
*/
addV(v, Visited) Visited v
addV(v, Visited); /* */
v
print(v); /* */
if ( v ) { modifyQ(x, v, Q) Q x
return v ; x a x
} v x
for ( v b b<a x v
Visited x ) { x b
if ( x Q )
addQ(x, v, Q);
else
Gr
modifyQ(x, v, Q);
S.BA

D.GG
} .ci
Gr
}
} f

,
15

Gr

S
9H ) h f
G

s 0 10
10
Gr : A 4 8 12
B 5 6 11
x f
f(x) g(x) h(x) D
96 8 7 14
g(x) S x C 9 4
S A C] g(C) 13
h(x) x
A h(A)
G x G
14150 Y15

You might also like