Core C Programming (2 판)

Core C Programming (2 판)

$43.80
Description
이 책은 C 문법서가 아니기 때문에, 각 장이 왜 이런 기능이 필요할까? 에서부터 시작하고 있습니다. 왜 이런 기능이 필요한지, 왜 그렇게 사용할 수밖에 없는지를 알고 나면 개념 을 받아들이고 이해하기 쉬워집니다. 또한, 이 책은 핵심을 꿰뚫는 풍부하고 다양한 그림을 통해서 C의 기능들을 설명하고 있습니다.
개념 설명 후에는 사용 형식과 다양한 예제 코드, 주의 사항들을 통해서 배운 개념을 자기 것으로 만들 수 있도록 단계별로 확장해 나갑니다. 소단원별로 비교적 쉽고 간단한 객관식 문제를 제시하여, 배운 내용 중 핵심 키워드를 다시 생각해볼 수 있도록 구성하였습니다. 또한 장 별로 제시된 다양한 형식의 연습문제(객관식, OX, 단답형, 주관식, 프로그래밍 문제 등)를 통해서 C 언어의 여러 가지 기능에 대한 이해도를 스스로 판단할 수 있을 것입니다.

C가 제공하는 다양한 고급 기능과 활용 방법은 C를 처음 배우는 입장에서는 오히려 큰 진입 장벽이 될 수 있습니다. 이 책에서는 초보자가 굳이 알 필요 없는 부분은 생략하고, 핵심 기능 위주로 한 한기 동안 C 언어를 배울 수 있도록 구성하였습니다. 초보자들도 점차적으로 프로그래밍에 익숙해질 수 있도록 짧고 간단한 예제부터 시작해서
실무에서도 자주 사용되는 코드를 예제로 설명하고 있습니다.

예제에서 다뤄지지 못한 심화 내용은 다양한 프로그래밍 과제를 통해서 제시됩니다. 프로그래밍 과제에서는 각 문제마다 이용해야 할 기능과 난이도를 표시하여 학습자의 수준에 맞게 과제를 진행할 수 있게 구성하였습니다. 또한, 필요한 경우에는 프로그래밍에 익숙하지 않은 학습자에게 간단한 팁을 제시하여 문제 해결을 위한 접근 방향을 안내합니다.

이 책의 제일 중요한 특징은 C 언어를 처음 접하는 학생이나 프로그래머가 보다 쉽게 올 바른 코드를 작성할 수 있도록 C의 여러 가지 핵심 기능에 대한 가이드라인을 제시하고 있다는 것입니다. 예를 들어 9장의 문자열에서는 문자 배열과 문자열 포인터의 문법적인 특성이나 차이점만 설명하는 것이 아니라 어떤 상황에서 문자 배열을 사용해야 하고, 어떤 상황에서 문자열 포인터를 사용해야 하는지를 명확히 제시하고 있습니다.
저자

천정아

이화여대이학석사
전)LG전자기술원주임연구원
전)LG정보통신선임연구원
전)삼성SDS멀티캠퍼스전임교수
전)㈜베스트인프라수석컨설턴트

목차

C언어와프로그래밍개요001
·1.1C언어소개003
1.1.1프로그래밍의개념003
1.1.2C언어의특징007
·1.2C프로그램개발012
1.2.1일반적인C프로그램개발과정012
1.2.2VisualStudio를이용한C프로그램개발과정015
1.2.3VisualStudio를이용한C프로그램개발과정019
■■Summary031
■■Exercise032
■■ProgrammingAssignment035
CHAPTER2
C프로그램의기본037
·2.1C프로그램의구성요소039
2.1.1주석039
2.1.2main함수041
2.1.3출력047
·2.2C언어의입력과출력050
2.2.1변수050
2.2.2printf함수052
2.2.3scanf함수058
■■Summary064
■■Exercise065
■■ProgrammingAssignment070
CHAPTER3
데이터형과변수073
·3.1데이터형075
3.1.1데이터형의기본개념075
3.1.2정수형079
3.1.3문자형088
3.1.4실수형092
·3.2변수와상수096
3.2.1변수096
3.2.2상수105
■■Summary118
■■Exercise119
■■ProgrammingAssignment124
CHAPTER4
연산자127
·4.1연산자의기본개념129
4.1.1수식129
4.1.2연산자와피연산자130
·4.2연산자의종류132
4.2.1산술연산자132
4.2.2증감연산자139
4.2.3대입연산자142
4.2.4관계연산자147
4.2.5논리연산자150
4.2.6비트연산자154
4.2.7그밖의연산자161
·4.3연산자의우선순위와결합규칙170
4.3.1연산자의우선순위170
4.3.2연산자의결합규칙172
■■Summary174
■■Exercise175
■■ProgrammingAssignment179
CHAPTER5
제어문185
·5.1조건문187
5.1.1if188
5.1.2switch201
·5.2반복문208
5.2.1반복문의필요성208
5.2.2for209
5.2.3while218
5.2.4dowhile222
5.2.5무한루프226
·5.3분기문228
5.3.1break228
5.3.2continue233
5.3.3goto235
CHAPTER6
함수255
·6.1함수의개념257
6.1.1함수의필요성257
6.1.2함수의종류259
·6.2함수의기본261
6.2.1함수의정의261
6.2.2함수의호출270
6.2.3함수의선언287
·6.3지역변수와전역변수292
6.3.1지역변수293
6.3.2전역변수300
6.3.3변수의영역규칙303
·6.4표준C라이브러리함수306
■■Summary311
■■Exercise312
■■ProgrammingAssignment318
CHAPTER7
배열325
·7.1배열의기본327
7.1.1배열의개념327
7.1.2배열의선언329
7.1.3배열의초기화334
7.1.4배열의사용338
·7.2배열의활용345
7.2.1배열의탐색과정렬345
7.2.2다차원배열352
7.2.3함수의인자로배열전달하기359
■■Summary364
■■Exercise365
■■ProgrammingAssignment370
CHAPTER8
8포인터377
·8.1포인터의기본379
8.1.1포인터의개념379
8.1.2포인터의선언및초기화380
8.1.3포인터의사용387
8.1.4포인터의용도389
8.1.5포인터사용시주의사항393
8.1.6const포인터396
·8.2포인터의활용399
8.2.1배열과포인터의관계399
8.2.2여러가지포인터의선언412
·8.3함수와포인터417
8.3.1함수의인자전달방법417
8.3.2값에의한전달417
8.3.3포인터에의한전달419
8.3.4배열의전달424
■■Summary428
■■Exercise429
■■ProgrammingAssignment434
CHAPTER9
문자열441
·9.1문자배열443
9.1.1문자와문자열443
9.1.2문자배열의선언및초기화444
9.1.3문자배열의사용446
·9.2표준C의문자열처리함수448
9.2.1문자열의길이구하기450
9.2.2문자열의복사452
9.2.3문자열의비교456
9.2.4문자열의연결458
9.2.5문자열의검색460
9.2.6문자열의토큰나누기462
9.2.7문자열의입출력464
·9.3문자열포인터468
9.3.1char*형의문자열포인터468
9.3.2constchar*형의문자열포인터473
9.3.3문자열사용을위한가이드라인476
·9.4문자열의배열480
9.4.12차원문자배열480
9.4.2문자열포인터배열484
■■Summary488
■■Exercise489
■■ProgrammingAssignment494
CHAPTER10
구조체501
·10.1구조체의기본503
10.1.1구조체의개념503
10.1.2구조체의정의504
10.1.3구조체변수의선언및초기화508
10.1.4구조체변수의사용510
10.1.5구조체변수간의초기화와대입513
10.1.6구조체변수의비교515
10.1.7typedef517
·10.2구조체의활용521
10.2.1구조체배열522
10.2.2구조체포인터526
10.2.3함수의인자로구조체전달하기532
10.2.4비트필드540
10.2.5구조체의멤버로다른구조체변수사용하기544
·10.3공용체와열거체546
10.3.1열거체546
10.3.2공용체551
■■Summary557
■■Exercise558
■■ProgrammingAssignment565
CHAPTER11
변수,함수의활용및동적메모리573
·11.1변수의활용575
11.1.1변수의특성575
11.1.2auto와register577
11.1.3extern578
11.1.4static583
·11.2함수의활용593
11.2.1재귀함수593
11.2.2함수포인터599
·11.3동적메모리619
11.3.1동적메모리의개념619
11.3.2동적메모리의필요성620
11.3.3동적메모리의할당과해제622
11.3.4동적메모리사용시주의사항627
11.3.5동적메모리의활용631
11.3.6동적메모리관리함수635
■■Summary636
■■Exercise637
■■ProgrammingAssignment642
CHAPTER12
표준입출력과파일입출력649
·12.1표준입출력651
12.1.1스트림기반의입출력651
12.1.2printf함수다시보기655
12.1.3scanf함수다시보기659
12.1.4형식이없는표준스트림입출력함수667
·12.2파일입출력668
12.2.1파일입출력의개요669
12.2.2텍스트파일입출력675
12.2.32진파일입출력686
■■Summary694
■■Exercise695
■■ProgrammingAssignment701
CHAPTER13
전처리기와분할컴파일707
·13.1전처리기709
13.1.1매크로710
13.1.2조건부컴파일728
·13.2분할컴파일738
13.2.1#include문739
13.2.2소스파일과헤더파일의구성741
13.2.3헤더파일의중복포함막기753
13.2.4헤더파일과소스파일의구성756
·13.3main함수의매개변수757
■■Summary761
■■Exercise762
■■ProgrammingAssignment768
INDEX773