본문 바로가기
과목 구분 없음9급 지방직 공무원 컴퓨터일반 · 2021년06월05일 · 10/20

10.다음 C++ 프로그램의 실행 결과로 옳은 것은?

9급 지방직 공무원 컴퓨터일반 10번 문제 이미지
1
21정답
2
22
3
30
4
31

해설

해당 코드를 분석하면 다음과 같습니다. 클래스는 정수형 변수 _id와 정적 정수형변수 _cnt를 가지고 있다. Student 클래스의 생성시 아무 값도 입력되지 않으면 생성자를 통해 Student(0)으로 대체한다. Student 클래스 생성시 값이 입력되면 그 값은 _id에 저장한다. 만약 _id의 값이 0보다 크면 _cnt의 값을 1 증가 한다. 정적 멤버 함수 print 실행시 _cnt의 값을 출력한다. 멤버함수 printID 실행시 _id의 값을 1 더한 후 출력한다. 이를 실행하면 다음과 같습니다. Student A(2)가 실행 -> _id : 2, _cnt = 1 Student B가 실행 -> _id : 0, _cnt = 1 Student C(4)가 실행 -> _id : 4, _cnt = 2 Student D(-5)가 실행 -> _id : -5, _cnt = 2 Student E가 실행 -> _id : 0, _cnt = 2 Student::print()가 실행 -> Student클래스에 저장된 _cnt의 값(2)이 출력 E.printID()가 실행 -> 클래스 E의 _id의 값(0)에 1더한 후 출력 위의 출력 함수들에서는 개행 문자나 개행 명령이 없으므로 2와 1이 붙어서 출력 됩니다. 출력결과 21

이 시험을 직접 풀어보세요

실전과 동일한 CBT 환경에서 시간 제한 연습

회원가입 없이 CBT 풀기