Do it! C 언어 프로그래밍 입문 (코딩 초보도 끝까지 따라 하는 실습형 입문서)

Do it! C 언어 프로그래밍 입문 (코딩 초보도 끝까지 따라 하는 실습형 입문서)

$27.45
Description
입문자에게는 확실한 첫걸음, 다시 시작하는 사람에겐 흔들림 없는 재도약
이 한 권으로 C 언어를 제대로 끝낸다!
C 언어를 처음 배우는 입문자부터 이미 다른 언어를 경험했거나 C 언어를 다시 배우는 사람까지 모두 만족시킬 수 있는 책이 있을까? 《Do it! C 언어 프로그래밍 입문》은 그 질문에 가장 확실한 정답이 되는 책이다.
이 책은 ‘개념 → 실습 문제 → 실력 향상 프로젝트 → 마무리 문제’로 이어지는 체계적인 흐름을 기반으로, 단순히 코드를 따라 치는 데서 그치지 않고 ‘C 언어로 사고하는 방식’을 자연스럽게 익히도록 구성했다.
변수와 자료형 같은 기초 개념에서 시작해 직접 코드를 작성해 볼 수 있는 실습 예제를 풍부하게 수록했고, 이어지는 ‘실력 향상 프로젝트'에서는 가위바위보 게임, 경마 게임 프로그램 등을 실제로 구현해 보며 C 언어의 원리를 이해할 수 있도록 했다. 또한 장이 끝날 때마다 ‘마무리 문제’로 학습 내용을 점검하며 학습자가 스스로 이해도를 점검할 수 있도록 구성했다.
이 책이 가진 가장 큰 차별점은 ‘왜 이렇게 동작하는가?’를 끝까지 파고드는 설명 방식이다. 이를 통해 C 언어의 구조와 활용 방법을 익혀 C++, 자바, 파이썬 등 다른 언어로 확장할 수 있는 기반을 만든다. 저자의 25년 프로그래밍 교육 노하우가 담긴 이 책은 학습자가 실제로 어려움을 느끼는 지점을 정확히 짚어내며, 입문자가 끝까지 학습을 이어 나갈 수 있도록 돕는 맞춤형 설명 방식이 녹아 있다.
이 책은 C 언어를 처음 배우는 사람에게는 가장 든든한 첫걸음이 되고, 다시 배우는 사람에게는 흔들렸던 기초를 정확히 세워주는 새로운 시작점이 될 것이다.
저자

조성호

중학교시절,아버지께서선물해주신애플II컴퓨터를계기로프로그래밍의세계에발을들였습니다.한국외국어대학교전산학과를졸업하고,고려대학교컴퓨터학과에서석사와박사학위를취득했습니다.그후전산개발이사로근무하며개발한소프트웨어로‘신소프트웨어대상’을수상하였습니다.
현재한신대학교AI·SW학부에서운영체제,컴퓨터네트워크,C언어,자바,웹프로그래밍을강의하고있습니다.누구나쉽게이해할수있는전산관련서적을집필하기위해끊임없이연구하고있으며,프로그래밍의본질을쉽고명확하게전달하는교육에힘쓰고있습니다.

대표저서
•《쉽게배우는운영체제》(한빛아카데미,2025)
•《미라클HTML5+CSS3+자바스크립트》(한빛아카데미,2024)
•《IT세상을만나는컴퓨터개론》(한빛아카데미,2024)
•《스티브잡스는왜오징어게임을죽였을까?》(생능북스,2023)
•《데이터통신과네트워킹》(인피니티북스,2022)
•《WONDER파이썬》(인피니티북스,2022)
•《WONDERC》(인피니티북스,2021)

목차

01장프로그래밍준비하기
01-1컴퓨터에작업을지시하는방법
_사람이사용하기쉬운언어로명령하세요
_프로그래밍언어3대장─파이썬,C,C++
_프로그래밍을배울때C언어로시작하면좋은점
01-2프로그램개발과정과기초용어
_프로그램을만들고실행하는과정
_프로그래밍에서사용하는기초용어─코드,오류,디버깅
01-3프로그래밍환경설정
_윈도우에서C프로그래밍준비하기
_macOS에서C프로그래밍준비하기
_웹브라우저에서C프로그래밍준비하기
01-4첫번째프로그램만들기
_1.비주얼스튜디오에서프로젝트만들기
_2.C소스파일만들기
_3.C코드작성하기l
_4.컴파일하기
_5.실행하기
_6.오류해결하기
마무리문제


02장프로그래밍시작하기
02-1C프로그램의기본구조
_기본구조살펴보기
_코드를작성할때기본규칙
_주석작성하기
_함수와라이브러리
02-2출력함수사용방법
_printf()함수의특징
_다양한제어문자
_특수문자출력
02-3프로그래밍을위한기초지식
_진법과표현
_논리연산
마무리문제


03장변수에데이터담기
03-1변수를선언하고사용하기
_변수란무엇인가?
_변수만들기
_변수이름규칙
_데이터출력하기
_변수초기화
_여러변수선언하기
_[실력향상프로젝트01]제곱근구하기
03-2입력함수사용방법
_입력함수scanf()
_scanf()함수사용시주의사항
_비주얼스튜디오에서scanf()사용
_[실력향상프로젝트02]사칙연산프로그램만들기
마무리문제


04장자료형의종류와특징
04-1정수자료형
_정수형의특징알아보기
_음수표현방법
_양수만저장하는unsigned
_오버플로와언더플로
_자료형의크기와수표현범위
_정수형서식문자
_[실력향상프로젝트03]휴대폰요금계산하기
04-2실수자료형
_실수형의특징알아보기
_실수저장방식
_실수형의크기와서식
_[실력향상프로젝트04]급여계산기만들기
04-3문자자료형
_문자형의특징
_[실력향상프로젝트05]아스키코드출력하기
04-4상수와매크로
_상수형변수
_매크로
_[심화학습]리터럴
_[실력향상프로젝트06]라벨만들기
마무리문제


05장연산자
05-1연산자의기본개념과우선순위
_연산자와피연산자
_연산자우선순위
05-2주요연산자살펴보기
_산술연산자
_비교연산자
_논리연산자
_대입연산자
_증감연산자
_[실력향상프로젝트07]생수구매비용계산하기
05-3기타연산자살펴보기
_나열연산자와sizeof연산자
_형변환연산자
_[심화학습]비트연산자
_연산자우선순위
마무리문제


06장조건문
06-1if~else문으로분기하기
_제어문의기본개념알기
_if문의구조
_if~else문의구조
_중괄호와블록
_다중조건문
_무작위수만들기
_[실력향상프로젝트08]가위바위보게임만들기
06-2switch~case문으로분기하기
_switch문의구조
_다중조건문과switch문
_switch문의활용
_삼항조건연산자
_[실력향상프로젝트09]여행지추첨프로그램만들기
마무리문제


07장반복문
07-1반복문의구조알아보기
_반복문의기본개념과구성요소
_while문의구조
_for문의구조
07-2for문으로반복실행하기
_중첩반복문
_시스템명령어실행하기─system()함수
_[실력향상프로젝트10]홀짝게임만들기
07-3while문으로반복실행하기
_while문의용도
_do~while문
07-4반복제어하기
_break예약어
_continue예약어
_[실력향상프로젝트11]스탠드게임만들기
마무리문제


08장함수
08-1사용자정의함수만들기
_라이브러리함수
_사용자정의함수의필요성
_사용자정의함수의구조
_사용자정의함수의위치
_매개변수사용하기
_[실력향상프로젝트12]센티-인치변환프로그램만들기
08-2변수의종류와범위
_지역변수
_변수의생존범위
_전역변수
_전역변수사용을자제해야하는이유
_[실력향상프로젝트13]사운드미터만들기
08-3함수의종류와특징
_함수의종류
_참조에의한호출
_값반환
_[실력향상프로젝트14]행운의숫자맞히기
마무리문제


09장배열
09-1배열의기본사용법
_배열선언과사용하기
_반복문으로배열다루기
_배열초기화하기
_문자형배열로문자열다루기
_문자형초기화하기
_[실력향상프로젝트15]매크로를이용해평균값구하기
09-2함수와배열
_배열매개변수
_문자열매개변수
09-3[심화학습]이차원배열
_[실력향상프로젝트16]경마게임만들기
마무리문제


10장포인터
10-1포인터이해하기
_직접접근과간접접근
_포인터변수선언과초기화
_포인터에자료형이필요한이유
10-2포인터로데이터에접근하기
_포인터에주소연결
_값대입과주소대입의의미
_[실력향상프로젝트17]움직이는경마게임만들기
10-3포인터상수화
_포인터자체를상수화
_포인터가가리키는곳의값을상수화
10-4배열과포인터
_포인터와배열의닮은점
_포인터와배열의차이점
_포인터와매개변수
10-5포인터연산
_포인터연산에서자료형의의미
_[심화학습]포인터와증감연산자
_[실력향상프로젝트18]움직이는경마게임의경주마수조절하기
마무리문제


11장문자와문자열
11-1문자와문자열입출력기초
_문자열복습하기
_입출력버퍼
_버퍼를사용하는문자입출력─getchar(),putchar()
_버퍼를사용하지않는문자입출력─_getch()와_putch()
_문자열입출력─gets(),puts()
_[실력향상프로젝트19]40칸광고판만들기
11-2문자/문자열처리라이브러리함수
_문자처리함수
_문자열처리함수
_문자열복사와붙이기
_문자열비교와찾기
_문자열을숫자로변환하기
_[실력향상프로젝트20]비밀번호유효성검사프로그램만들기
11-3문자열묶음다루기
_이차원배열로문자열묶음다루기
_포인트배열로문자열묶음다루기
_[실력향상프로젝트21]사다리타기프로그램만들기
마무리문제


12장구조체
12-1구조체이해하기
_구조체정의와변수선언
_구조체에데이터넣기
_사용자정의자료형만들기─typedef
_구조체복사하기
_멤버구조체
_[실력향상프로젝트22]누가형님일까?─나이비교프로그램만들기
12-2구조체배열과포인터
_구조체배열만들기
_구조체배열사용하기
_구조체포인터이해하기
_구조체포인터를멤버로가지는구조체
_[실력향상프로젝트23]반복문을이용해연결리스트출력하기
12-3구조체와함수
_함수에구조체보내기
_함수에구조체주소보내기
_함수에서구조체반환하기
_함수에구조체배열보내기
마무리문제


13장파일입출력
13-1파일이해하기
_스트림과버퍼
_파일사용준비하기
_파일디스크립터와위치지시자
_파일열기와닫기
_[실력향상프로젝트24]파일열고닫기
13-2파일입출력다루기
_문자단위입출력
_문자열단위입출력
_서식을사용한입출력
_파일위치지시자
_[실력향상프로젝트25]파일내용을거꾸로출력하기
마무리문제


14장전처리와다중소스파일
14-1전처리와매크로
_전처리이해하기
_함수매크로
_매크로에서문자열사용
_내장매크로
_열거형
_[실력향상프로젝트26]매크로를사용해정렬알고리즘만들기
14-2다중소스파일
_다중소스파일이해하기
_다중소스파일의처리과정
_다중소스파일설계
_다중소스파일실습
_정적변수와외부변수─static,extern
마무리문제


15장이중포인터와함수포인터
15-1이중포인터
_이중포인터이해하기
_이차원배열과이중포인터
_함수와이중포인터
_main()함수의매개변수
_void포인터
15-2함수포인터
_함수포인터이해하기
_함수포인터사용하기
_[실력향상프로젝트27]이벤트시뮬레이터만들기
마무리문제


16장동적메모리할당
_16-1동적메모리할당하기
_동적메모리할당의필요성
_동적메모리할당함수
_[실력향상프로젝트28]유연한평균출력프로그램만들기
16-2연결리스트만들기
_동적메모리를이용한연결리스트
_연결리스트구현
_연결리스트에노드삽입
_[실력향상프로젝트29]입력한순서대로연결리스트만들기
마무리문제
마무리문제모범답안
찾아보기

출판사 서평

배우는순서그대로실력이쌓이는3단계학습구조!
C언어의기본기를체계적으로익혀야다른프로그래밍언어를배우더라도두렵지않습니다.이책은‘왜이렇게동작하는가?’를스스로고민하도록유도하여C언어로생각하는법을자연스럽게습득하는3단계학습구조를제공합니다.
첫번째단계는개념학습단계로,C언어의필수개념을꼼꼼하고이해하기쉽게설명합니다.귀여운캐릭터를활용해학습난도를낮추고,어렵거나헷갈리기쉬운개념도쉽게풀어내어입문자도무리없이따라올수있게구성했습니다.두번째단계에서는실습중심학습을통해C언어의핵심문법을‘Doit!실습’으로직접익혀보며기초를탄탄하게다질수있습니다.마지막단계는심화학습단계로,앞서배운개념을실제로활용해볼수있도록‘실습문제’,‘마무리문제’,‘실력향상프로젝트’를제공하여스스로점검하고실력을확장할수있도록했습니다.이처럼이책은C언어가단순히외우는것이아니라,직접해보며배워야하는프로그래밍언어임을자연스럽게체감할수있도록설계되었습니다.

140개예제와‘마무리문제’로C언어완전정복!
C언어를학습하다가실습문제가적어서답답한적있나요?그래서이책은140개의예제와장이끝날때마다‘마무리문제’를수록했습니다!이론중간에는‘Doit!실습’으로배운내용을코드로직접구현하며,완벽히익힐수있도록했습니다.‘마무리문제’에서는배운내용을복습하면서부족한부분을채울수있도록했습니다.이책의마지막에‘마무리문제’의정답을실어틀린부분을바로잡고스스로의학습이해도를점검하여최종목표인C언어에대한감각을기를수있습니다.

개념과실무감각을함께키우는입문서!
이책은단순히개념만나열하는입문서가아닙니다.각장의이론사이에‘개발지식더하기’를배치해학습과정에서생길수있는궁금증을즉시해소할뿐아니라실제개발업무에도움되는지식까지얻을수있습니다.
또한이론중간난도를점차달리한‘심화학습’내용을수록해기본기에서한단계더나아가C언어의핵심개념과고급개념을함께다질수있도록구성했습니다.C언어의원리를탄탄하게다지는것은물론,코딩테스트나취업준비를위한기본기를이책으로확실히갖출수있습니다.더나아가실무에가까운사고방식까지자연스럽게익힐수있습니다.

이런분께추천합니다!
ㆍ프로그래밍을처음배우는전공1학년또는입문자
ㆍ파이썬,자바등을배우기전에프로그래밍의원리를확실히다지고싶은학습자
ㆍ코딩테스트나개발자취업을준비하며C언어의개념을체계적으로복습하고싶은취준생
ㆍ예제·프로젝트중심의실전형C언어학습서를찾는분

C언어입문자라면30일,복습하는사람이라면16일!
2가지학습계획표와예제파일을제공합니다

이책은학습속도에맞춰선택할수있는2가지학습계획표를제공합니다.C언어를처음시작한다면하루2~3시간씩꼼꼼히공부할수있는‘30일학습계획표’를,C언어를복습하거나다른언어를사용해본경험이있다면‘16일학습계획표’를활용해보세요.
또한이책의실습에필요한예제파일은이지스퍼블리싱홈페이지에서내려받을수있습니다.예제파일을옆에두고코드를직접실행해보며C언어의감각을자연스럽게익혀보세요.
ㆍ이지스퍼블리싱홈페이지www.easyspub.co.kr→[자료실]클릭→이책제목으로검색

‘Doit!스터디룸’에서공부단을신청해보세요!
혼자계획을세우고공부하다보면금방지치기마련입니다.‘Doit!스터디룸’의공부단에접속해서이책완독에도전해보세요.함께공부하는사람도만나고,공부하는내용을올려공유하고인증하면책선물도드립니다.또한어려운내용이있다면‘Doit!스터디룸’게시판에질문을남겨보세요.전문가와저자가명쾌하게해결해드립니다.
ㆍDoit!스터디룸:cafe.naver.com/doitstudyroom