2022년 1회
1. 다음 Java 코드의 출력 결과를 작성하시오.
class A {
int a;
int b;
}
public class Main {
static void func1(A m) {
m.a *= 10;
}
static void func2(A m) {
m.a += m.b;
}
public static void main(String args[]){
A m = new A();
m.a = 100;
func1(m);
m.b = m.a;
func2(m);
System.out.printf("%d", m.a);
}
}
더보기
class A { // 클래스 A 생성
int a;
int b;
}
public class Main {
static void func1(A m) {
m.a *= 10;
}
static void func2(A m) {
m.a += m.b;
}
public static void main(String args[]){ // main 함수는 배열을 매개변수로 받음
A m = new A(); // A m은 새로운 A 클래스의 인스턴스를 담고 있음
m.a = 100;
func1(m); // m.a는 1000
m.b = m.a; // m.b는 1000
func2(m); // m.a는 2000
System.out.printf("%d", m.a); // 2000
}
}
답: 2000
2. 다음 Java 코드 중에서 밑줄에 들어갈 알맞는 코드를 작성하시오.
class Car implements Runnable{
int a;
public void run(){
system.out.println("Hello")
}
}
public class Main{
public static void main(String[] args){
Thread t1 = new Thread(new ___());
t1.start();
}
}
더보기
class Car implements Runnable{ // Car 클래스는 Runnable 인터페이스를 상속 받음
int a;
public void run(){ // run() 메소드 선언
system.out.println("Hello")
}
}
public class Main{
public static void main(String[] args){
Thread t1 = new Thread(new ___());
t1.start(); // .start() 메소드로 thread 실행 => run() 호출돼서 Hello 출력
}
}
Car가 Thread를 상속받고 있기 때문에 Car()로 인스턴스를 먼저 생성해주어야 한다.
답: Car
2022년 2회
1. 다음 자바 코드에 알맞는 출력값을 작성하시오.
public static void main(String args[]){
int i = 3; int k = 1;
switch(i) {
case 1: k += 1;
case 2: k++;
case 3: k = 0;
case 4: k += 3;
case 5: k -= 10;
default: k--;
}
System.out.print(k);
}
더보기
public static void main(String args[]){
int i = 3; int k = 1;
switch(i) { // i가 3이므로 3부터 시작
case 1: k += 1;
case 2: k++;
case 3: k = 0; // k를 1에서 0으로 만듦
case 4: k += 3; // k = 3
case 5: k -= 10; // k = -7
default: k--; // k = -8
}
System.out.print(k);
}
답: -8
2. 다음 자바코드에서 알맞는 출력값을 작성하시오.
public class Conv{
public Conv(int a) {
this.a = a;
}
int func() {
int b =1;
for (int i=1; i<a; i++){
b = a * i + b
}
return a +b;
}
int a;
}
public static void main(String[] args){
Conv obj = new Conv(3);
obj.a=5;
int b = obj.func();
system.out.print(obj.a + b);
}
더보기
public class Conv{ // Conv 클래스 생성
public Conv(int a) { // Conv 생성자
this.a = a;
}
int func() { // func() 메소드 선언
int b =1;
for (int i=1; i<a; i++){
b = a * i + b
}
return a +b;
}
int a;
}
public static void main(String[] args){
Conv obj = new Conv(3); // 인자를 3으로 하여 새로운 Conv 인스턴스 생성 (a=3)
obj.a=5; // obj 인스턴스의 a값을 5로 업데이트
int b = obj.func(); // func() 메소드의 리턴값을 b에 넣음
system.out.print(obj.a + b);
}
i = 1,
b = 5 * 1 + 1 = 6
i = 2,
b = 5 * 2 + 6 = 16
i = 3,
b = 5 * 3 + 16 = 31
i = 4,
b = 5 * 4 + 31 = 51
a + b = 5 + 51 = 56
따라서 b = 56, obj.a = 5이므로 둘이 더하면 61
답: 61
2022년 3회
1. 다음 자바 코드에 대한 출력 값을 작성하시오.
public class Main {
static int[] MakeArray(){
int[] tempArr = new int[4];
for(int i=0; i<tempArr.Length;i++){
tempArr[i] = i;
}
return tempArr;
}
public static void main(String[] args){
int[] intArr;
intArr = MakeArray();
for(int i=0; i < intArr.Length; i++)
System.out.print(intArr[i]);
}
}
더보기
public class Main { // Main 클래스 정의
static int[] MakeArray(){ // MakeArray() 메소드 정의
int[] tempArr = new int[4]; // 크기 4인 정수 배열 tempArr 생성
for(int i=0; i<tempArr.Length;i++){
tempArr[i] = i; // tempArr에 0, 1, 2, 3 저장
}
return tempArr;
}
public static void main(String[] args){ // main() 함수 정의
int[] intArr; // intArr 배열 선언
intArr = MakeArray(); // 0, 1, 2, 3 차례대로 intArr에 저장
for(int i=0; i < intArr.Length; i++) // intArr의 길이만큼 반복해서
System.out.print(intArr[i]); // 값 1개씩 출력 (println 아니라서 들여쓰기 X)
}
}
답: 0123
2. 다음 자바 코드에 대한 출력 값을 작성하시오.
public class Exam {
public static void main(String[] args){
int a = 0;
for(int i=1; i<999; i++){
if(i%3==0 && i%2!=0)
a = i;
}
System.out.print(a);
}
더보기
public class Exam {
public static void main(String[] args){
int a = 0;
for(int i=1; i<999; i++){ // 998번 반복
if(i%3==0 && i%2!=0) // i가 3의 배수이면서 2의 배수는 아니라면
a = i; // a 값 업데이트
}
System.out.print(a); // 최종 업데이트된 값 출력
}
최종적으로 업데이트된 값을 출력하는 것이기 때문에 998부터 찾는 게 쉽다.
답: 993
'자격증 > 정보처리기사 (실기)' 카테고리의 다른 글
[C] 정처기 실기 기출 문제 풀이 (0) | 2025.07.04 |
---|---|
[Java] 정처기 실기 기출 문제 풀이 (2021년) (1) | 2025.07.01 |
[Java] 정처기 실기 기출 문제 풀이 (2020년) (1) | 2025.07.01 |
[Java] 기본 문법 총정리 (2/2) (1) | 2025.06.30 |
[Java] 기본 문법 총정리 (1/2) (2) | 2025.06.29 |