페이지

2015. 1. 7.

[JAVA] Day3.제어문 문제

1. 다음 중 코드의 실행 결과가 나머지와 다른 것은?

A.
int i=1;
while(i<=5) {
    System.out.println(i);
    ++i;
}

B.
int i=1;
for(;i<=(5%10);i++) {
    System.out.println(i);
}

C.
int i=0;
do {
    ++i;
    System.out.println(i);
} while (i<=5);

D.
int i=1;
while(i<=5) {
    System.out.println(i);
    i++;
}

// 정답 C


2. . 다음 코드의 실행 결과는?

int i = 0;
for (; i <4; i += 2) {
    System.out.print(i + ““);
}
System.out.println(i);

A. 0 2 4
B. 0 2 4 5
C. 0 1 2 3 4
D. Compilation fails.

// 정답 A




3. 다음 코드의 실행 결과는?

int i = 1,j = -1;
    switch (i) {
    case 0,1: j = 1;
    case 2: j = 2;
    default; j = 0;
}
System.out.printIn(“j=“+j);
A. j = -1
B. j = 0
C. j = 1
D. j = 2
E. Compilation fails.

// 정답 E : case값이 2개이다.
// 만약 case가 0이 없고 1만 있다면 결과는?
// j=0 왜냐하면 break가 없당.


4. 다음 코드의 실행 결과는?

char a, b;
System.out.println('A'+'B'+”“+null);
A. null
B. ABnull
C. 131
D. 131null


// 정답 D
// 'A'는 문자열이 아님 아스키 값으로 65임
// 65+66=131
// ""를 더하면서 스트링이 되고



5. 다음 코드의 실행 결과는?

int i = 1, j = 4;
while (j-- <= 0)
    i++;
System.out.println(“i=“ +i+ “ and j=“+j);
A. i=0 and j=6
B. i=0 and j=5
C. i=1 and j=3
D. i=1 and j=4




10. 다음 코드의 실행 결과는?

int x = 1, y =6;
while (y--) {
    x++;
}
System.out.println(“x =“ + x + “y =“ +y);
A. x = 6 y = 0
B. x = 7 y = 0
C. x = 6 y = -1
D. x = 7 y = -1
E. Compilation fails.

// 정답 D




11. 다음 코드의 실행 결과는?

int i = 0;
while (true) {
    if(i==4) {
        break;
    }
    ++i;
}
System.out.println(“i=“+i);
A. i = 0
B. i = 3
C. i = 4
D. i = 5
E. Compilation fails.

// 이런식으로 일부러 무한반복 시키는 경우가 있다.
// break를 만나면 if가 아니고 while을 탈출하기 떄문!!




12. 다음 코드의 실행 결과는?

int i =1, j = 0;
switch(i) {
    case 2: j +=6;
    case 4: j +=1;
    default: j +=2;
    case 0: j +=4;
}
System.out.printIn(“j=“ +j);
A. j=0
B. j=2
C. j=4
D. j=6

// 정답 D
// 문법적으로 default아래에 case 추가 가능

13. 다음 코드의 실행 결과는?

int i =1,j =10;
do {
    if(i++> --j) {
        continue;
    }
}while (i <5);
System.out.println(“i=“ +i+ “ and j=“+j);
A. i=5 and j=5
B. i=5 and j=6
C. i=6 and j=5
D. i=6 and j=6




14. 변수 num의 값에 따라 ‘양수’, ‘음수’, ‘0’을 출력하는 코드를 작성하시오. (삼항 연산자)

class Test{
    public static void main(String[] args) {
        int num = 10;
        // 여기에 추가
    }
}

15. 다음 중 변수의 이름으로 사용할 수 있는 것은? (모두 고르시오)

A. $ystem // O
B. channel#5 // X 기호는 _&만 가능
C. 7eleven // X 숫자는 처음에 못씀
D. If // O 가장 이상적으로 쓰임
E. 자바 // O 한글 가능
F. new // X 키워드 안됨
G. $MAX_NUM // O
H. hello@com // X 기호는 _&만 가능

16. 다음 중 기본형(primitive type)이 아닌 것은?

A. int
B. Byte
C. double
D. boolean

17. 참조형 변수와 같은 크기의 기본형(primitive type)은? (모두 고르시오)

A. int
B. long
C. short
D. float
E. double

18. 다음 문장들의 출력 중 오류가 있는 문장은? (ASCII 값 : A=65, 1=49)

A. System.out.println("1" + "2"); // 12
B. System.out.println(true + ""); // "true"
C. System.out.println(true + ""); // "true"
D. System.out.println('A'+'B'); //131
E. System.out.println('A'+2); //67
F. System.out.println('1'+'2'); //0이 48임 즉, 99
G. System.out.println('J'+"ava"); // java
H. System.out.println(true+null); //error 논리형은 다른 타입과 연결 불가. 스트링하고만 가능
I.  System.out.println(""+null); //문자 널 "null"