목차
시작 전에 = 1
Turbo-C의 구성 = 2
Turbo-C의 설치 = 3
Turbo-C의 사용 = 4
Turbo-C의 실행 예 = 10
연습문제 = 12
제1장 C언어란? = 13
1.1 C언어의 유래 = 14
1.2 C언어의 특징 = 14
연습문제 = 16
제2장 프로그램 구조와 함수 = 17
2.1 프로그램의 구조 = 18
2.2 함수의 정의와 호출 = 19
2.2.1 간단한 main()함수 = 19
2.2.2 사용자 정의 함수 = 20
2.3 주석문과 들여쓰기(Indentation) = 22
2.4 예약어와 식별자 = 23
2.4.1 예약어(Reaerved Word) = 23
2.4.2 식별자(Identifier) = 24
연습문제 = 25
제3장 자료형과 입·출력 = 27
3.1 자료형(Data Type) = 28
3.2 상수와 변수 = 31
3.2.1 상수 = 32
3.2.2 변수의 자료형 선언과 초기화 = 34
3.3 입·출력 함수 = 36
3.3.1 prinff()함수 = 36
3.3.2 scanf()함수 = 45
3.3.3 getchar()함수와 Putchar()함수 = 47
3.3.4 gets()함수와 puts()함수 = 48
연습문제 = 51
제4장 연산자, 수식과 문장 = 55
4.1 수식과 문장 = 56
4.2 연산자의 종류와 우선순위 = 56
4.2.1 산술 연산자 = 56
4.2.2 대입 연산자 = 58
4.2.3 증가 연산자와 감소 연산자 = 58
4.2.4 관계 연산자, 논리 연산자 = 60
4.2.5 비트 연산자 = 62
4.2.6 복합 대입 연산자 = 67
4.2.7 조건 연산자와 컴마 연산자 = 69
4.2.8 그 외의 연산자 = 70
4.2.9 연산 우선 순위 = 73
연습문제 = 75
제5장 선행 처리기 = 79
5.1 파일 인클루드 = 80
5.2 매크로 정의 및 치환 = 80
5.3 선택적 컴파일 = 86
5.3.1 #if, #else, #endif, #ifdef, #ifndef = 86
연습문제 = 90
제6장 제어문 = 93
6.1 블록 = 94
6.2 분기문 = 94
6.2.1 if문 = 95
6.2.2 swtich문 = 103
6.3 반복문 = 106
6.3.1 for문 = 106
6.3.2 while문 = 111
6.3.3 do while문 = 115
6.4 break문 = 116
6.5 continue문 = 119
6.6 goto문과 레이블 = 121
연습문제 = 124
제7장 배열(Array) = 129
7.1 배열(Array) = 130
7.1.1 1차원 배열(One-Dimentional Array) = 130
7.1.2 다차원 배열(Multi-Dimentional Array) = 135
7.1.3 문자 배열 = 143
7.1.4 문자열과 배열 = 147
연습문제 = 149
제8장 포인터(Pointer) = 151
8.1 포인터의 개념 = 152
8.2 포인터 변수의 선언 = 154
8.2.1 포인터 변수 = 154
8.2.2 포인터 변수의 값 = 157
8.2.3 포인터의 연산 = 158
8.2.4 포인터의 포이터(이중 포인터) = 161
8.3 포인터와 배열 = 163
8.3.1 포인터와 일차원 배열 = 163
8.3.2 포인터와 2차원 배열 = 170
8.3.3 포인터와 문자 배열 = 176
8.3.4 포인터 변수 배열 = 180
연습문제 = 183
제9장 함수 = 189
9.1 함수의 정의와 호출 = 190
9.1.1 함수의 기본 개념 = 190
9.1.2 함수의 정의 = 190
9.1.3 함수 호출 = 193
9.2 프로토타입(prototype)선언 = 198
9.3 함수간의 데이터 전달 방법 = 201
9.3.1 함수의 반환 = 201
9.3.2 인수 전달 방법 = 205
9.3.3 값에 의한 호출(Call by Value) = 214
9.3.4 주소에 의한 호출(Call by Reference) = 215
9.4 함수와 포인터 = 220
9.5 재귀 함수(Recusive Function) = 223
연습 문제 = 227
제10장 기억 클래스(Storage Class) = 231
10.1 자동 기억 클래스(Auto Class) = 232
10.2 레지스터 기억 클래스(Register Class) = 236
10.3 정적 기억 클래스(Static Class) = 237
10.4 외부 기억 클래스(External Class) = 242
10.5 변수의 통용 범위 및 기억 클래스의 특성 = 246
연습문제 = 248
제11장 구조체, 공용체, 열거형 = 253
11.1 구조체(Sturcture) = 254
11.1.1 구조체의 선언 = 254
11.1.2 구조체의 초기화 = 259
11.2 구조의 멤버(member) = 260
11.2.1 "."(도트 멤버 연산자) = 260
11.2.2 "->"(간접 멤버 연산자) = 265
11.3 구조체와 함수 = 272
11.3.1 구조체의 값과 주소전달 = 273
11.3.2 구조체 배열 전달 = 276
11.4 중첩된 구조체 = 278
11.5 자기 참조적 구조체 = 282
11.5.1 비트 필드형(bit field)구조체 = 287
11.6 공용체(Union) = 290
11.6.1 공용체 정의와 공용체 변수 = 290
11.6.2 공용체 멤버 = 292
11.6.3 구조체와 공용체의 결합 = 293
11.7 열거형(enumeration) = 296
11.8 사용자 정의 자료형 = 297
연습문제 = 300
제12장 파일 처리 = 305
12.1 개요 = 306
12.1.1 텍스트 모드와 이진 모드 = 306
12.2 파일의 open, close = 307
12.2.1 파일 포인터 = 307
12.2.2 파일의 open = 308
12.2.3 파일의 close = 309
12.2.4 표준 입출력 파일 = 310
12.3 파일 입출력 함수 = 311
12.3.1 한 문자의 입출력 = 311
12.3.2 문자열의 입출력 = 313
12.3.3 서식 지정 입출력 = 315
12.3.4 블록 입출력 함수 = 317
12.3.5 파일 상태 파악 함수 = 319
12.3.6 perror()함수와 strerror()함수 = 321
12.3.7 ungetc()함수 = 322
12.4 비순차 처리 = 324
12.4.1 fseek()함수 = 325
12.4.2 ftell(), rewind(), fflush()함수 = 328
연습문제 = 330
제13장 라이브러리 함수 = 333
13.1 문자분류와 문자열 변환 = 334
13.1.1 문자분류 및 문자변환 함수 = 334
13.1.2 문자열 변환 함수 = 337
13.2 문자열 처리 함수 = 341
13.3 기억장소 할당 함수 = 354
13.4 수치 연산 함수 = 360
13.5 날짜, 시간 함수 = 362
13.6 프로세스 제어 함수 = 365
연습 문제 = 367
부록 = 369
1. ASCⅡ코드 = 370
2. 편집 명령 모음(단축키) = 372
3. 라이브러리 헤더 파일의 내용 = 375
4. 컴파일러 에러 메시지 = 385
5. 연습 문제 풀이 = 398