문제 1. 헝가리안 표기법(Hungarian Notation)에 대해 간략히 서술하시오.
답 : 변수명 작성시 변수의 자료형을 알 수 있도록 자료형을 의미하는 문자를 포함하여 작성하는 방법
문제 2. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main() { int i = 10, j =10, k =30; i /= j; j -= i; k %= j; printf("%d, %d, %d\n", i, j, k); } |
답 :
1, 9, 3
문제 3. 다음은 2개의 정수를 입력받아 합을 출력하는 Java 프로그램이다. 괄호에 공통으로 들어갈 가장 적합할 코드를 쓰시오.
import java.util.( ); public class Test { public static void main(String args[]) { ( ) scan = new ( ) (system.in); int a = scan.nextInt(); int b = scan.nextInt(); System.out.printf("%d", a + b); scan.close(); } } |
답 : Scanner
문제 4. 다음 C언어로 구현된 프로그램을 분석하여 그 결과를 쓰시오.
#include <stdio.h> main() { int result, a = 100, b = 200, c =300; result = a < b ? b++ : --c; printf("%d, %d, %d\n", result, b, c); } |
답 : 200, 201, 300
문제 5. 다음 C언어의 <코드>와 <입력>을 보고 프로그램을 분석하여 그 실행 결과를 쓰시오.
<코드>
#include <stdio.h> main( ) { int i, j; scanf("%o#%x", &i, &j); printf("%d %d", i, j); } |
<입력>
15#22 |
답 : 13 34
문제 6. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main() { int j = 024, k = 24, L = 0x24, hap; hap = j + k + L; printf("%d, %d, %d, %d\n", j, k, L, hap); } |
답 :
20, 24, 36, 80
문제 7. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main() { int i = 5, j = 4, k = 1, L, m; L = i > 5 || j != 0; m = j <= 4 && k < 1; printf("%d, %d\n", L, m); } |
답 : 1, 0
문제 8. 다음 Java로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Test { public static void main(String args[]) { int a = 12, b = 5, sum = 2; b *= a /= 4; sum += ++a * b-- / 4; System.out.printf("%d", sum); } } |
답 :
17
문제 9. 다음 Java로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Test { public static void main(String args[]) { int a = 5, b = 9, c; c = b % 5 < 5 ? 1 : 0; c = c | << 3; c = a < 5 || c >= 10 ? c - a : c + a; System.out.printf("%d", c); } } |
답 : 14
문제 10. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main( ) { int a = 5, b = 10, c = 15, d = 30, result; result = a * 3 + b > d || c - b / a <= d && 1; printf("%d\n", result); } |
답 : 1
SECTION 150 제어문
문제 1. 다음은 변수 n에 저장된 10진수를 2진수로 변환하여 출력하는 Java 프로그램이다. 프로그램을 분석하여 괄호 (1, 2)에 들어갈 알맞은 답을 쓰시오.
public class Test { public static void main (String[ ] args) { int a[ ] = new int[8]; int i = 0; int n = 10; while ( (1) ) { a[i++] = ( (2) ); n /= 2; } for(i = 7; i>=10; i--) System.out.print(a[i]); } } |
답
(1) : n > 0
(2) : n % 2
문제 2. 다음 Java로 구현된 프로그램을 분석하여 괄호((1) ~ (2))에 들어갈 알맞은 답을 쓰시오.
public class Test { public static void main(String[ ] args) { int ary[ ][ ] = new int [( (1) )][( (2) )]; int n = 1; for(int i = 0; i < 3; i++) { for(int j = 0; j < 5; j++) { ary[i][j] = j * 3 + i + 1; System.out.print(ary[i][j] + " "); } System.out.println(); } } } |
답 :
1. 3
2. 5
문제 3. 다음 Java로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Test { public static void main(String[ ] args) { int i = 0, c = 0; while (i < 10) { i++; c *= i; } System.out.println(c); } } |
답 : 0
문제 4. 다음 Java로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Test{ public static void main(String[ ] args) { int a = 0, sum = 0; while ( a < 10) { a++; if (a % 2 == 1) continue; sum += a; } System.out.println(sum); } } |
답 : 30
문제 5. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main ( ) { int c = 1; switch (3) { case 1: c += 3; case 2: c++; case 3: c = 0; case 4: c += 3; case 5: c -= 10; default: c--; } printf("%d", c); } |
답 : -8
문제 6. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main( ) { int a = 3, b = 10; if (b > 5) printf("%x\n", a + b); else printf("%x\n", b - a); } |
답 : d
문제 7. 다음 C언어로 구현된 프로그램을 실행했을 때 반복문 수행 후 마지막으로 출력되는 결과를 쓰시오.
#include <stdio.h> main( ) { int n = 0, t = 0; do { t += n; printf("%d, %d\n", n++, t); } while (n < 10); } |
답 : 9 45
문제 8. 다음 C언어의 <코드>와 <출력>을 보고 괄호((1), (2))에 들어갈 적합한 코드를 쓰시오.
#include <stdio.h> int main(void) { int i, j, n; n = ( (1) ); for (i = 1; i <= ( (2) ); i++) { for (j = 1; j <= i; j++) printf("%3d", j); printf("\n"); } } |
<출력>
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 1 2 3 4 5 6 7 |
답
1 : 7
2 : n
문제 9. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main() { int i = 10, hap = 0; while (i > 1) { i--; if (i % 3 == 1) hap += i; } printf("%d\n", hap); } |
답 : 12
문제 10. 다음 Java로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Problem { public static void main(String[] args){ int i, hap = 0; for(i = 1; i <= 10; ++i) hap += i; System.out.printf("%d, %d\n", i, hap); } } |
답 : 11, 55
문제 11. 다음은 5개의 정수를 입력받아 그 중 홀수의 개수를 구하여 출력하는 알고리즘을 C언어로 구현한 코드이다. 프로그램을 분석하여 괄호에 들어갈 가장 적합한 코드를 쓰시오.
#include <stdio.h> main() { int i, a[5], cnt = 0; for (i = 0; i < 5; i++) scanf("%d", &a[i]); for(i = 0; i < 5; i++) if (a[i] % 2 ( ) 0) cnt = cnt + 1; } printf("홀수의 개수 " %d개", cnt); scan.close(); } |
답 : != 또는 >
문제 12. 다음 Java로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Problem { public static void main(String[ ] args) { int [ ] [ ] a = { {11, 12, 13, 14}, {21, 22, 23, 24}, } int hap = 0; for (int i[ ] : a) { for (int j : i) hap = hap + j; } System.out.printf("%d", hap); } } |
답 : 140
문제 13. 다음 Java로 구현된 프로그램을 분석하여 a, b에 각각 8과 3을 입력했을 때 그 실행 결과를 쓰시오.
import java.util.Scanner; public class Test { public static void main(String args[ ]) { Scanner scan = new Scanner(System.in); int a = scan.nextInt(); int b = scan.nextInt(); char c = 'G'; if (a > 10 && b < 10) { if (a - b < 5 || a > 15) c = 'X'; } else if (a > 5 && b < 5) { if (a - b < 3 || b > 0) c = 'Y'; } else c = 'Z'; System.out.printf("%c", c); scan.close(); } } |
답 : Y
문제 14. 다음 Java로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Problem { public static void main(String[ ] args) { String str = "Programming"; int n = str.lenth(); char[ ] st = new char [n]; n--; for (int k = n; k >= 0; k--) { st[n-k] = str.charAt(k); } for (char k : st) { System.out.printf("%c", k); } } } |
답 :
SECTION 151 포인터
문제 1. 다음 C 언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main( ) { char *p = "KOREA"; printf("%s\n", p); printf("%s\n", p+3); printf("%c\n", *p); printf("%c\n", *(p+3)); printf("%c\n", *p+2); |
답 :
KOREA
EA
K
E
N
문제 2. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main() { char a[] = { 'A', 'B', 'C', 'D', 'E', 'F'}; char *p; p = &a[2]; printf("%c, %c\n", *p, *(p-2)); } |
답 :
C, A
문제 3. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> main() { int a[5], b = 1, sum = 0; for (int i = 0; i < 5; i++) { a[i] = b; b *= 2; } for (int i = 0; i < 5; i += 2) sum += *(a + i); printf("%d", sum); } |
답 : 21
문제 4. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> #include <string.h> main( ) { int k, n; char st[ ] = "I am Tom!"; char temp; n = strlen(st); n--; for (k = 0; k < n; k++) { temp = *(st + k); *(st + k) = *(st + n); *(st + n) = temp; n--; } printf("%s\n", st); } |
답 :
!moT ma I
SECTION 152 사용자 정의 함수
문제 1. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> void align(int a[ ]) { int temp; for (int i = 0; i < 4; i++) for (int j = 0; j < 4 - i; j++) if (a[j] > a[j+1]; { temp = a[j]; a[j] = a[j+1] a[j+1] = temp; } } main( ) { int a[ ] = {85, 75, 50, 100, 95}; align(a); for (int i = 0; i < 5; i++) printf("%d", a[i]); } |
답 : 50, 75, 85, 95, 100
문제 2. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> int r1() { return 4; } int r10() { return (30 + r1()); } int r100() { return (200 + r10()); } int main() { printf("%d\n", r100()); return 0; } |
답 : 234
문제 3. 다음은 12와 6을 입력받아 <출력>과 같은 결과를 나타내는 프로그램을 C언어로 구현한 것이다. 프로그램을 분석하여 괄호((1)~(4))에 들어갈 가장 적합한 코드를 쓰시오.
<코드>
#include <stdio.h> int sub(int i, int j) { return i - j; } int add(int i, int j){ return i + j; } main() { int i, j, result; int (*pf)(int, int); scanf("%d, %d", &i, &j); pf = ( (1) ); ( (2) ) = pf(i, j); printf("%d, ", result); ( (3) ) = sub; result = ( (4) ); printf("%d", result); } |
출력
18, 6 |
답
1 : add
2 : result
3 : pf
4 : pf(i, j)
문제 4. 다음은 피보나치 수를 구하는 알고리즘을 C언어 <코드>로 구현한 프로그램이다. 제시된 <피보나치 수>의 정의를 참고하여 <코드>의 미완성 로직을 면밀히 분석한 후 괄호((1), (2))에 들어갈 가장 적합한 코드를 쓰시오.
<피보나치 수>의 정의
Fibonacci(n)
- if n=0, 0
- if n=1, 1
- others, Fibonacci(n-2) + Fibonacci(n-1)
<코드>
#include <stdio.h> int Fibonacci(int n) { if(n==0) return 0; else if(n==1) return ( (1) ); else return Fibonacci ( (2) ) + Fibonacci(n-1); } int main(void) { int i = 0; for(i = 0; i < 10; i++) printf("%d ", Fibonacci(i)); return 0; } |
답 : 1, n-2
문제 5. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h> func(int *p) { printf("%d\n", *p); printf("%d\n", p[2]); } main( ) { int a[7] = { 1, 2, 3, 4, 5 }; func(a); func(a + 2); } |
답 :
1
3
3
5
'자격증 > 정보처리기사 실기 문제 풀이' 카테고리의 다른 글
흥달쌤 정보처리기사 실기 데이터베이스 문제(DCL) (0) | 2023.04.05 |
---|---|
흥달쌤 정보처리기사 실기 데이터베이스 문제(DDL(Date Definition Language)) (0) | 2023.04.05 |
흥달쌤 정보처리기사 실기 데이터베이스 문제(관계대수 & 관계해석) (0) | 2023.04.01 |
시나공 정보처리기사 실기 8장 SQL 응용 문제 풀이 (0) | 2021.10.10 |
정보처리기사 문제 1장 요구사항 확인 (0) | 2021.10.02 |