JAVA/자바 완전 정복
자바 완전 정복 3장 연습문제 풀이
GaeGim
2022. 7. 5. 00:15
반응형
Q1. 다음은 산술 연산에 관한 코드다. 출력값을 쓰시오.
System.out.println(2+3/2); //2+1 ∴3
System.out.println(10%3+5/3); //1+1 ∴2
System.out.println((4+5/2)%4); //(6)%4 ∴2
Q2. 다음은 증감 연산에 관한 코드다. 출력값을 쓰시오.
int a=5;
int b=a++;
System.out.println(a); //6
System.out.println(b); //5
System.out.println(++a); //7
System.out.println(++b); //6
System.out.println(a++ + --b); //7+5 ∴12
System.out.println(a+b); //8+5 ∴13
Q3. 다음은 비트 연산자에 관한 코드다. 출력값을 쓰시오(3 = 0b00000011, 5 = 0b00000101이며, 출력값은 2진수로 표현해도 됨).
System.out.println(5&3); //00000001 ∴1
System.out.println(5|3); //00000111 ∴7
System.out.println(5^3); //00000110 ∴6
System.out.println(~5); //-6
Q4. 다음은 시프트 연산자에 관한 코드다. 출력값을 쓰시오.
System.out.println(7<<2); //28
System.out.println(7>>2); //1
System.out.println(-7<<2); //-28
System.out.println(-7>>2); //-2
System.out.println(-1>>>30); //3
Q5. 다음은 비교 연산자에 관한 코드다. 출력값을 쓰시오.
System.out.println(3<3); //false
System.out.println(5>=3); //true
System.out.println(5<=5); //true
System.out.println(5==5); //true
System.out.println(5!=5); //false
Q6. 다음은 논리 연산자에 관한 코드다. 출력값을 쓰시오.
System.out.println(false&&true); //false
System.out.println((4<=4)||(6<3)); //(true||false) ∴true
System.out.println(false^(3>=4)); //(false^false) ∴false
System.out.println(!(3<=3)); //!(true) ∴false
Q7. 다음은 논리 연산자와 비트 연산자로 논리 연산을 수행한 코드다. 출력값을 쓰시오.
int a=4, b=5, c=6;
System.out.println(false && a-->6); //false
System.out.println(true | b++>6); //true
System.out.println(true ^ c++>6); //(true ^ false) ∴true
System.out.println(a); //4 (쇼트 서킷으로 증감 연산 반영 안 됨)
System.out.println(b); //6
System.out.println(c); //7
쇼트 서킷 - 증감 연산자 주의
Q8. 다음은 대입 연산자에 관한 코드다. 출력값을 쓰시오.
int a=3;
a<<=1;
System.out.println(a); //aX2 ∴6
a &= 5;
System.out.println(a); //4
a -= 1; //3
System.out.println(a*=2); //6
Q9. 다음은 삼항 연산자에 관한 코드다. 출력값을 쓰시오.
int a=3;
int b=5;
int c=7;
System.out.println((a>b) ? "안녕하세요" : "반갑습니다"); //반갑습니다
System.out.println((a<b) ? (b>c) ? "타입A" : "타입B" : (b>c) ? "타입C" : "타입D"); //타입B
반응형