안녕하세요
개인 문제 풀이이므로 오답이 있을 수 있습니다.
오답 또는 답이 이상하다 느끼시는 경우 댓글로 말씀해 주시면 감사드리겠습니다.
01. 다음 프로그램의 출력 결과는 무엇인가? 그리고 무엇을 하는 코드인가?
for(int i=1; i<10; i+=2){
System.out.print(i+" ");
}
[ 정답 ]
1, 3, 5, 7, 9 이 출력되며 홀수를 출력하는 코드이다.
02. 다음 for 문의 실행 결과 sum 값이 다른 하나는?
① for(int i=0; i<10; i++) sum += i;
② for(int i=9; i>0; i--) sum += i;
③ for(int i=0; i>10; i++) sum++;
④ for(int i=0; i<10; sum += i, i++);
[ 정답 : 3번 ] - i가 0인데 i가 10보다 값이 큰 경우 반복이다 반복하지 않는다 그리고 sum++의 경우 1씩 더해지므로 값 또한 다르다.
03. 1에서 100까지 3의 배수를 더하는 while 문이다. 빈칸에 적절한 코드를 삽입하라.
int sum=0, i=1;
while (i < 100) {
if(i%3 !=0) {
i++;
_________;
}
else sum += i;
i++;
}
[ 정답 ] - continue를 넣어주면 된다.
사실 넣어도 안 넣어도 문제의 결과 값의 차이가 없습니다.
if 문 조건이 i가 3으로 나눠서 몫 값이0이 아닌 경우에는 참0인 경우에는 거짓을 반복
즉 1~100의 값 주 3의 배수를 sum에 값을 더해줍니다.
다중 중첩문을 사용하는 경우에는 작성이 필요하지만 이 문제에서는 단순 if-else 문이기 때문에 없어도 배수를 덧셈하는 연산에 문제는 없습니다.
04. 1에서 50까지의 합을 더하는 while 문이다. 빈칸에 적절한 코드를 삽입하라.
int sum=0, i=1;
while (true) {
if(________) break;
sum += i;
i++;
}
[ 정답 ] - i>50, i==51, i>=51
if가 참이 되는 순간 바로 break가 되므로 단 하나만이 정답은 아닙니다.
취향으로 3개 중 하나를 선택하면 될 것 같습니다.
05. 다음 배열 선언이 잘못된 것은?
① int [] n = {1, 2, 3, 4, 5};
② int n [] = { 0 };
③ int [] n = new int [3];
④ int n[3] = new int [3];
[ 정답 : 4번] = 좌측에 선언과 동시에 []의 크기를 지정할 수 없습니다.
06. 다음 코드에 대해 실행 중 오류가 발생하는 것은?
int array[] = {1,2,3,4,5 };
① array[0] = -1;
② int list [] = array;
③ System.out.println(array[4]);
④ array[array.length] = 100;
[ 정답 : 4번 ] - length의 경우 길이 메소드인데 미리 선언된 값과 맞지 않다.
07. 배열을 선언하고 생성하는 다음 물음에 답하라.
(1) 10의 문자를 가지는 배열 c를 생성하는 코드를 한 줄로 쓰라.
(2) 0에서 5까지 정수 값으로 초기화된 정수 배열 n을 선언하라.
(3) '일', '월', '화', '수', '목', '금', '토'로 초기화된 배열 day를 선언하라.
[ 정답 ]
(1) - char c[] = new char [10];
(2) - int n[] = {0, 1, 2, 3, 4, 5};
(3) - char day [] = { '일', '월', '화', '수', '목', '금', '토' };
08. 배열을 선언하고 생성하는 다음 물음에 답하라.
(1) 4개의 논리 값을 가진 배열 bool을 선언하고 true, false, false, true로 초기화하라.
(2) 5행 4열 크기의 2차원 실수 배열 d를 선언하라.
(3) 1에서 12까지 순서대로 초기화되는 4행 3열의 2차원 배열 val을 선언하라.
[ 정답 ]
(1) - boolean bool [] = { true, false, false, true };
(2) - double d = new doubel [5][4];
(3) - int val = { {1,2,3},
{4,5,6},
{7,8,9},
{10,11,12} };
09. 다음 자바 코드에 대해 답하라.
int myArray[];
myArray[0] = 1;
myArray[1] = myArray[0] + 1;
(1) 어느 부분에 컴파일 오류가 있으며, 오류의 발생 원인은 무엇인가?
(2) 오류를 수정하라.
[ 정답 ]
(1) - 첫 번째 줄이며, 오류의 원인은 int myArray[]의 크기가 선언되어 있지 않아서이다.
(2) - int myArray[] = new int [2];를 선언해 줘야 한다.
10. 배열 alpha를 모두 출력하고자 한다. 빈칸에 적절한 코드를 삽입하라.
(1)
char [] alpha = { 'a', 'b', 'c', 'd' };
for(________________)
System.out.print(alpha[i]);
[ 정답 ] - for(int i =0; i<alpha.length; i++)
(2)
char [] alpha = { 'a', 'b', 'c', 'd' };
for(________________)
System.out.print(c);
[ 정답 ] - for(char c : alpha)
11. 다음 소스의 출력 결과는?
int n[][] = {{1}, {1,2,3}, {1}, {1,2,3,4}, {1,2}}; for (int j=0; j<n.length;j++) System.out.print(n[j].length + " ");
[ 정답 ] - 1, 3, 1, 4, 2의 값을 갖는다.
이런 모양을 갖는 배열이 됩니다.
12. 다음 그림과 같은 구조를 가지는 double 타입의 2차원 배열을 선언하고, 값을 직접 배열에 삽입하는 방법으로 그림에 있는 값으로 초기화하는 코드를 작성하라.
[ 정답 ] - double Array[][] = { {1.1, 1.2, 1.2, 1.4 }, { 2.1, 2.2 }, { 3.1, 3.2, 1.2 }, { 4.1}};
13. 다음 중 main() 메소드에 대한 설명 중 틀린 것은?
① 원형 public abstract void main(String [] args)이다.
② 자바 프로그램은 main() 메소드에서부터 실행을 시작한다.
③ 명령행이 java Hello abc 5이면, "abc"와 "5"가 문자열 배열로 만들어져 Hello 클래스 안에 있는 main() 메소드에 전달된다.
④ 명령행이 java Hello abc 5일 때, Hello 클래스에 main() 메소드가 없으면 실행 시작 후 바로 오류를 내면서 종료한다.
[ 정답 : 1번 ] - abstract(추상화)가 아닌 static이 들어가야 된다.
14. 다음 문장에서 빈 칸에 적절한 단어를 찾아 삽입하라.
자바 프로그램이 문법에 맞지 않게 작성되었을 때, _____는 컴파일 오류를 발생시킨다. _____는 컴파일 오류가 없는 자바 프로그램이 실행 중에 발생한 오류를 말하며, 프로그램이 이 오류에 대한 대처가 없다면 _____된다. 이런 오류가 발생할 가능성이 있는 코드들을 _____ 블록에 넣고, 오류가 발생하면 처리할 코드는 _____ 블록에 넣는다. _____ 블록은 생략 가능하다. |
JAM(자바 가상 기계), try, 로더, catch, 예외, finally, System, 이벤트, Class, 바로 종료, 다시 실행, 일시 중단, 컴파일러 |
[ 정답 ] ( 빈칸의 순서를 번호로 적었습니다)
1. 컴파일러(컴파일러가 컴파일 오류를 발생시키죠)
2. 예외
3. 바로 종료
4. try
5. catch
6. finally
부족한 글 읽어주셔서 감사드립니다!
'개인 학습용 해설 > 명품 Java Programming' 카테고리의 다른 글
명품 JAVA Programming 4판 4장 연습문제 - 이론문제 (4) | 2021.11.15 |
---|---|
명품 JAVA Programming 4판 3장 연습문제 - 실습문제 개인 풀이 (0) | 2021.11.08 |
명품 JAVA Programming 4판 2장 연습문제 - 실습문제 (0) | 2020.10.15 |
명품 JAVA Programming 4판 2장 연습문제 - 이론문제 개인풀이 (0) | 2020.10.13 |
명품 JAVA Programming 4판 1장 연습문제 - 실습 (0) | 2020.10.12 |