https://www.boostcourse.org/cs112
컴파일링의 네 단계에 해당하지 않는 것은 무엇인가요?
① 디버깅(debugging)
② 링킹(linking)
③ 전처리(preprocessing)
④ 어셈블링(assembling)
→ 컴파일링 단계로 전처리, 컴파일, 어셈블링, 링킹이 있다. ∴ ①번
소스코드 내에 존재하는 오류를 해결하기 위한 작업을 무엇이라고 하나요?
① 체킹(checking)
② 컴파일링(compling)
③ 리졸빙(resolving)
④ 디버깅(debugging)
→ ④번
아래 코드는 기능상으로는 문제가 없지만 C 언어 스타일 가이드에는 부합하지 않습니다. 어떻게 변경하면 스타일 가이드에 부합한 코드가 될까요?
① printf 함수와 세미콜론(;) 사이에 공백을 추가한다.
② printf 함수를 들여쓰기해서 중괄호{} 사이에 포함되었음을 표현한다.
③ int main(void) 바로 옆에서 여는 중괄호({)를 시작한다.
④ 여는 중괄호({)와 같은 줄에 printf 함수를 작성한다.
→ ②번
char 자료형을 5개 담을 수 있는 [edwith]라는 이름의 배열을 선언하는 코드는 무엇인가요?
① char edwith[4];
② char edwith*5;
③ char edwith[5];
④ chars edwith[5];
→ ③번
int scores[10]; 이라는 배열이 선언되어 있습니다. 이 배열의 처음부터 끝 인덱스까지 순환하는 for 루프는 무엇인가요?
① for (int i = 1; i < 10; i++) {... scores[i] ...}
② for (int i = 1; i < 11; i++) {... scores[i] ...}
③ for (int i = 0; i < 10; i++) {... scores[i] ...}
④ for (int i = 0; i < 11; i++) {... scores[i] ...}
→ ③번
string names[2];
names[0] = "MONSTER";
names[1] = "MOM";
위와 같은 코드가 주어졌을 때 아래 보기 중 그 값이 다른 것은 무엇일까요?
① names[0][0]
② names[1][0]
③ names[1][2]
④ names[0][2]
→ names[0][0], names[1][0], names[1][2]는 'M', names[0][2]만 'N'이다. ∴ ④번
아래와 같은 main 함수를 지니는 edwith.c 코드소스를 작성하고 컴파일했습니다. '$ ./edwith hello world'를 실행하였을 때 argc의 값은 무엇일까요?
① 1
② 3
③ 2
④ 4
→ 파일 이름 edwith와 hello, world ∴ ②번
C 소스파일의 링크, 컴파일, 빌드 작업을 자동화해주는 툴은 다음 중 무엇인가요?
① make
② clang
③ link
④ autocompile
→ ①번
소스코드를 작성할 때 우리가 의식적으로 또는 무의식적으로 저지른 실수나 오류를 통상적으로 일컫는 단어는 무엇인가요?
① 앱노멀(abnormal)
② 미스테이크(mistake)
③ 폴트(fault)
④ 버그(bug)
→ ④번
다음 중 문자열(string)이 메모리에 저장되는 방식에 대한 설명으로 틀린 것은 무엇인가요?
① 문자열(string)은 문자(char)의 배열로 저장된다
② 문자열(string)은 포함된 문자(char) 개수 만큼의 메모리 자리를 차지한다
③ 문자열(string)의 끝에는 널(NUL) 종단 문자가 포함된다
④ 문자열(string)의 각 문자(char)는 메모리상에 연이어서 저장된다
→ ②번