본문 바로가기

C 언어

백준으로 배우는 C 언어 04. 고양이

printf 함수는 문자만 프린트할 수 있는 게 아닙니다. 특수 문자들도 출력할 수가 있는데요, 특수 문자들을 잘만 조립한다면 그림을 그릴 수도 있죠. 다만 프로그래밍을 할 때 일부 특수 문자는 좀 특별한 방법으로 사용해야 합니다. 


 

백준으로 배우는 C 언어 02. Hello World!

프로그래밍을 배우기 시작하면 항상 한 번씩은 해보는 것이 있죠. 바로 Hello World!인데요, 백준 역시 "세상아 반갑다"로 시작을 하네요. 백준 단계별 풀어보기의 첫 단계인 입출력과 사칙연산의 1번 문제 Hello..

torotoblog.tistory.com

 

백준으로 배우는 C 언어 03. We love kriii

저번 강좌에 이어서 두 번째 강좌네요! 두 번째 문제인 We love kriii에서는 저번 Hello World에 이어 printf 함수를 조금 더 디테일하게 살펴볼 겁니다. 바로 시작할까요?! 백준으로 배우는 C 언어 01. Xcode 설..

torotoblog.tistory.com


이번에 풀어볼 문제는 입출력과 사칙연산의 3번째 문제, 고양이입니다. 출력에 나온 것 같이 특수 문자들을 사용해서 고양이 그림을 출력하는 문제이죠. \, /, (, ), _, |, ' 이렇게 총 7가지의 특수 문자들을 사용하는데요, 그중에서 백슬래시(\ 또는\)를 특히 조심해야 합니다. 그럼 이제 코딩을 해보죠.

#include <stdio.h>

int main(void) {
    printf("\\    /\\\n");
    printf(" )  ( ')\n");
    printf("(  /  )\n");
    printf(" \\(__)|\n");
    return 0;
}

코드를 잘 살표보시면 백준에서 출력하라고 준 출력물과 조금 다른 부분이 있습니다. 보이시나요?

printf("\\    /\\\n");
printf(" )  ( ')\n");
printf("(  /  )\n");
printf(" \\(__)|\n");

자세히 보시면 백슬래시들이 한 번이 아난 두 번씩 입력되어 있는걸 볼 수 있죠. 백슬래시는 보통 이스케이프 시퀀스(Escape Sequence, \n와 같이 백슬래시와 결합해서 줄바꿈, 탭 등의 특수 기능들을 실행할 수 있도록 해주는 조합)를 사용할 때 사용되기 때문에 백슬래시를 한번만 입력한다면 컴파일러가 문자가 아닌 이스케이프 시퀀스로 인식을 합니다. 하지만 지금 처럼 백슬래시를 문자로 출력하고 싶을 때가 있겠죠. 그럴때를 대비해서 C 언어에서는 백슬래시를 두번 입력하면 정상적인 문자로 출력을 하도록 되어있습니다.

이제 테스트를 해 봅시다. 코드를 입력한 후 디버그 버튼을 클릭해서 결과가 고양이 모습으로 나오는지 확인해 주세요.

자 이제 제출을 하면 됩니다. 백준으로 돌아와서 언어를 C로 선택한 뒤 제출을 해 줍시다. 

맞혔습니다!!

이스케이프 시퀀스는 총 13가지가 있는데요, 초보자 분들은 \n(줄 바꿈)\t(탭) 정도만 알고 있으면 될 것 같네요!


 

백준으로 배우는 C 언어 05. 개

고양이에 이어서 다시 한번 특수 문자를 활용한 문제입니다. 이번에는 개를 그려서 출력해야 하는데요, 고양이보다 조금 더 복잡해졌습니다. 그래도 원리 자체는 비슷하니 바로 시작해 보죠! 백준으로 배우는 C..

torotoblog.tistory.com