3.5 심사 사이트 사용하기

C 언어 코딩 도장은 책에서 배운 내용을 완전히 익힐 수 있도록 웹 사이트에서 퀴즈와 심사문제를 제공합니다.

  • 퀴즈: 객관식 문제와 짧은 답안을 입력하는 주관식 문제가 있습니다.
  • 심사문제: 문제의 답안을 C 언어로 작성하여 제출하는 방식입니다. 미완성된 코드에서 일부분만 제출하는 문제와 전체 코드를 제출하는 문제가 있습니다.

웹 브라우저를 실행하고 다음 주소로 이동합니다.

심사 사이트에서 퀴즈를 풀려면 회원 가입과 로그인이 필요합니다(회원 가입을 하지 않아도 강좌는 볼 수 있습니다). 다음 순서대로 회원 가입을 합니다.

  1. 화면 오른쪽 위의 로그인 링크 클릭합니다.
  2. 구글 또는 페이스북 계정이 있으면 Log in with Google, Log in with Facebook 버튼을 클릭합니다.
  3. 정보 제공을 허가하면 바로 회원 가입과 로그인이 됩니다.

만약 구글 또는 페이스북 계정을 사용하지 않으려면 다음 순서대로 회원 가입을 합니다.

  1. 화면 오른쪽 위의 로그인 링크 클릭합니다.
  2. 화면 오른쪽의 회원 가입 버튼 클릭합니다.
  3. 새 계정 화면에서 회원 가입을 합니다(이메일 인증을 하므로 실제로 사용하는 이메일 주소를 입력해주세요).
  4. 이메일 주소의 메일함에 계정 승인 메일이 도착해 있을 것입니다. 메일에서 인증 링크를 클릭하면 회원 가입이 완료됩니다.
  5. 가입한 계정으로 로그인을 합니다.

로그인을 하면 심사 사이트의 메인 화면이 나옵니다. 여기서 이용할 수 있는 강좌 > C 언어 코딩 도장 > 시작하기 버튼을 클릭합니다.

그림 3-22 언어 코딩 도장 시작하기

퀴즈를 풀려면 먼저 강좌 등록을 해야 합니다. 왼쪽 관리 메뉴에서 이 강좌에 등록시켜 주세요 링크를 클릭합니다.

그림 3-23 강좌 등록 링크

등록 요청 버튼을 클릭하는 즉시 등록이 완료됩니다.

그림 3-24 등록 요청

이제 화면을 아래로 스크롤한 뒤 'Unit 3. Hello, world!로 시작하기' 앞의 삼각형을 클릭하여 강좌 목록을 열고 '3.6 퀴즈'를 클릭합니다. 여기서 퀴즈 풀기 버튼을 클릭하면 퀴즈를 풀 수 있습니다.

그림 3-25 퀴즈 풀기 시작

퀴즈 문제를 읽고 답안을 선택한 뒤 체크 버튼을 클릭하면 답안이 채점됩니다. 채점이 끝났으면 다음 버튼을 클릭하여 다음 문제로 넘어가면 됩니다.

그림 3-26 퀴즈 풀기

이번에는 심사문제를 푸는 방법입니다. '3.9 심사문제: 문자열 출력하기'에서 퀴즈 풀기 시작 버튼을 클릭합니다.

그림 3-27 심사문제 시작

코드에서 밑줄이 쳐진 부분을 완성하는 문제입니다. 코드 아래 부분의 입력 상자에 답안을 입력한 뒤 다음 버튼을 클릭합니다.

그림 3-28 심사문제 풀기
참고 | 코드 완성 문제와 전체 코드 작성 문제

미완성 코드가 제시되고 밑줄이 있는 문제는 코드 전체를 입력하면 안 됩니다. 반드시 밑줄에 해당하는 코드만 입력하세요.

미완성 코드가 제시되지 않고 프로그램을 만들라고 나오는 경우에만 전체 코드를 입력하면 됩니다.

문제 채점 현황과 점수가 표시됩니다. 여기서 모두 제출하고 끝냄 버튼을 클릭합니다(만약 답안을 수정하고 싶다면 시도로 돌아가기 버튼을 클릭합니다).

그림 3-29 문제 제출하기

답안을 완전히 제출하기 전에 확정 창이 표시됩니다. 모두 제출하고 끝냄 버튼을 클릭합니다.

그림 3-30 제출 확정

버튼을 클릭하고 잠시 기다리면 채점이 완료되며 화면 아래에 답안의 상태와 문제의 해설이 출력됩니다.

그림 3-31 채점 화면

검토 마침을 클릭하면 퀴즈에 다시 도전할 수 있습니다(틀렸다고 걱정할 필요 없습니다. 아무리 쉬운 문제라도 한 번에 통과하는 사람은 그리 많지 않으니까요. 맞을 때까지 계속 도전해보세요).

참고 | 뭐가 틀렸는지 모르겠어요.

분명 printf 함수로 "Hello, world!"를 두 번 출력했는데 계속 통과를 못하고 있어요.

그림 3-32 심사에 통과하지 못한 상황
printf("Hello, world!");
printf("Hello, world!");

여기서 "Hello, world!"의 끝에 \n을 붙이지 않았으므로 다음과 같이 "Hello, world!" 두 개가 한 줄로 붙어서 나옵니다. 그래서 통과하지 못하는 것이죠.

Hello, world!Hello, world!

이때는 문자열이 각 줄에 출력될 수 있도록 \n을 붙여주면 됩니다.

printf("Hello, world!\n");
printf("Hello, world!\n");

그리고 줄바꿈뿐만 아니라 대소문자와 띄어쓰기도 틀리지 않도록 주의해야 합니다.