명품 JAVA Programming 2장 연습문제 정답
명품 JAVA Programming 2장 연습문제 정답
[2장 1번]
자바에서 클래스를 선언할 때 사용하는 자바의 키워드는?
- class 키워드
[2장 2번]
다음은 10과 20을 더해 합을 출력하려고 작성한 자바 프로그램이지만 오류가 있다.
public class SampleProgram {
int i;
int j;
i =10;
j =20;
System.out.println(i+j);
}
(1) 오류를 찾아내어 고쳐라.
- main 메소드가 없다.
public class SampleProgram {
public static void main(String[] args) {
int i;
int j;
i =10;
j =20;
System.out.println(i+j);
}
}
(2) 이 자바 클래스를 저장하는 소스 파일 이름은 무엇인가?
- SampleProgram.java
(3) 명령창에서 이 프로그램을 컴파일하는 명령은?
- javac SampleProgram.java
(4) 명령창에서 이 프로그램을 실행하는 명령은?
- java SampleProgram
[2장 3번]
다음 중 식별자 사용이 잘못된 경우를 모두 골라라.
int _i;
int %j;
char 안녕;
double 1var;
char student_ID;
final int abcdefghijklmnopqrstvwxyz;
- int %j; 와 double 1var; (%는 특수문자로 사용 불가 이고, 첫 번째 문자로 숫자는 사용하지 못한다.)
[2장 4번]
다음 각 항목이 나타내는 변수를 선언하라.
(1) int 형 변수 height
int height;
(2) 0.25로 초기화된 double형 변수 size
double size = 0.25;
(3) height 변수의 값과 size 변수의 값을 더한 값으로 초기화된 double형 변수 total
double total = height + size;
(4) 문자 'a'로 초기화된 char형 변수 c
char c = ‘a’;
(5) 자신의 이름으로 초기화된 문자열 변수 name
String name = “nanglam“;
[2장 5번]
다음 수식의 결과 값과 타입은?
(1) 67 + 12.8
- 79.8 (실수형)
(2) 10/3
- 3 (정수형)
(3) 10.0/3
- 3.3333333333333335 (실수형)
(4) 10==9
- false (논리형)
[2장 6번]
체온 값 36.5로 초기화된 상수 bodyTemp를 double형으로 선언하라.
final double bodyTemp = 36.5;
[2장 7번]
다음 각 항목의 코드에서 컴파일 오류를 수정하라.
(1)
while(1) { }
while(true) { } // java에서는 1, 0 대신 true, false를 사용하여야 한다.
(2)
int n = 3.5;
double n = 3.5; // 3.5는 실수형이다.
(3)
int b = (3<5)?true:false;
boolean b = (3<5)?true:false; //반환값이 논리형일 경우 boolean으로 선언한다.
(4)
int score = 85;
if(80 < score < 90) System.out.print(score);
int score = 85;
if(80 < score && score < 90) System.out.print(score);
[2장 8번]
다음 문장을 조건식으로 나타내라.
(1) age는 12보다 작거나 같다.
age <= 12
(2) age는 b보다 작고 c보다 크다.
age < b && age > c
(3) age 빼기 5는 10과 같다.
age – 5 == 10
(4) age는 b와 같지 않거나 c와 같다.
age != b || age == c
[2장 9번]
다음 조건문을 조건 연산자를 이용하여 한 문장으로 작성하라.
if(sum>100) sum = 100;
else sum = 0;
[풀이]
sum = (sum>100)?100:0;
[2장 10번]
다음 조건문을 조건 연산자를 이용하여 한 문장으로 작성하라.
if(n>5) System.out.println(n);
else System.out.println(5);
[풀이]
System.out.println((n>5)?n:5);
[2장 11번]
System.out.print(text);로 출력할 때 다음과 같이 출력되는 문자열 text는 무엇인가?
"를 출력하면 \다음에 "를 붙여 \"과 같이 하면 됩니다.
- \"를 출력하려면 \\다음에 \"를 붙여 \\\"과 같이 하면 됩니다.
[2장 12번]
다음 출력문에 의해 출력되는 텍스트는 무엇인가?
System.out.print("나는 \"Java를 "+ 100 + "%\"" + "사랑해");
- 나는 "Java를 100%"사랑해
[2장 13번]
다음 switch 문이 있을 때, 아래 (1)~(4)의 각 문항에 따라 출력되는 결과는?
int sum = 0;
switch(grade) {
case 'A' : sum += 100;
case 'B' : sum += 50;
case 'C' : sum += 30;
case 'D' : sum += 10;
}
System.out.print(sum);
(1) grade가 'A' 일 때
- 190
(2) grade가 'B' 일 때
- 90
(3) grade가 'C' 일 때
- 40
(4) grade가 'F' 일 때
- 0
[2장 14번]
다음 if 문을 switch 문으로 바꾸어라.
if(in.equals("가위"))
System.out.println(1);
else if(in.equals("바위"))
System.out.println(2);
else if(in.equals("보"))
System.out.println(3);
else
System.out.println(0);
*in과 "가위"를 비교하기 위해서는 in == "가위"로 하면 안됨. 문자열 비교는 반드시 in.equals("가위")로 해야 함.
[풀이]
switch(in) {
case "가위" : System.out.println(1); break;
case " 바위" : System.out.println(2); break;
case "보" : System.out.println(3); break;
default : System.out.println(0);
}
'IT > 프로그래밍' 카테고리의 다른 글
명품 JAVA Programming 4장 연습문제 정답 (0) | 2020.12.11 |
---|---|
명품 JAVA Programming 3장 연습문제 정답 (0) | 2020.12.11 |
쉽게 풀어 쓴 C언어 Express 17장 프로그래밍 문제 해설 (0) | 2020.12.10 |
쉽게 풀어 쓴 C언어 Express 16장 프로그래밍 문제 해설 (0) | 2020.12.10 |
쉽게 풀어 쓴 C언어 Express 15장 프로그래밍 문제 해설 (0) | 2020.12.10 |
댓글