목차
머리말 ... ⅲ
제1장 C 언어의 개요 ... 1
   1.1 C 언어와 소개 ... 1
      1.1.1 프로그래밍 언어 ... 3
      1.1.2 C 언어의 유래와 특징 ... 5
      1.1.3 C를 배운다면 ... 5
   1.2 C 프로그램의 기본 구조 ... 6
   1.3 C 프로그램의 개요 ... 8
   1.4 기본 실행 절차 ... 12
      1.4.1 컴파일러란? ... 12
      1.4.2 실행 절차는? ... 12
   1.5 간단한 기본적인 예제들 ... 15
   1.6 2진수, 16진수로의 변환 ... 18
   1.7 아스키코드의 값 ... 23
   연습문제 1 ... 26
제2장 C 언어의 기본요소 ... 29
   2.1 변수와 상수 ... 31
      2.1.1 변수 ... 31
      2.1.2 상수 ... 37
   2.2 표준 입출력 함수 ... 40
      2.2.1 getchar(), putchar(), getch(), getche() 함수 ... 41
      2.2.2 gets(), puts() 함수 ... 43
      2.2.3 printf() 함수 ... 43
      2.2.4 scanf() 함수 ... 52
   2.3 파일 입출력 함수 ... 55
      2.3.1 기본 파일 처리 ... 55
      2.3.2 fgetc(), fputc(), fgets(), fputs() 파일 함수 ... 56
      2.3.3 fprintf(), fscanf() 파일 함수 ... 57
   2.4 연산자 ... 60
      2.4.1 산술 연산자 ... 60
      2.4.2 관계 및 논리 연산자 ... 62
      2.4.3 비트 연산자 ... 66
      2.4.4 콤마, 다중 치환 연산자 ... 68
      2.4.5 포인터 연산자 ... 69
      2.4.6 연산자의 우선순위 ... 70
   2.5 수학 라이브러리 함수 ... 71
      2.5.1 수학 함수 ... 71
      2.5.2 산술식 ... 71
      2.5.3 난수 생성 ... 75
   연습문제 2 ... 77
제3장 프로그램의 제어문 ... 81
   3.1 선택 제어문 ... 83
      3.1.1 if문 ... 83
      3.1.2 if-else문 ... 87
      3.1.3 if-else if-else문 ... 90
      3.1.4 Switch문 ... 93
   3.2 반복 제어문 ... 97
      3.2.1 for문 ... 97
      3.2.2 while문 ... 106
      3.2.3 do-while문 ... 111
      3.2.4 분기 제어문 ... 114
   재미있는 게임 ... 117
   프로젝트 ... 119
   연습문제 3 ... 121
제4장 배열 ... 127
   4.1 1차원 배열 ... 129
      4.1.1 배열의 선언 ... 129
      4.1.2 배열의 주소 ... 130
      4.1.3 1차원 배열의 예 ... 131
   4.2 2차원(다차원) 배열 ... 132
      4.2.1 2차원 배열의 선언 ... 132
      4.2.2 메모리 할당 방법 ... 134
      4.2.3 2차원 배열의 예 ... 136
   4.3 배열의 초기화 ... 137
      4.3.1 1차원 배열의 초기화 ... 137
      4.3.2 2차원(다차원) 배열의 초기화 ... 141
   4.4 배열을 이용한 정렬 ... 145
      4.4.1 버블 정렬 ... 145
      4.4.2 선택 정렬 ... 149
   프로젝트 ... 151
   연습문제 4 ... 153
제5장 함수 ... 157
   5.1 부함수의 정의와 활용 ... 159
      5.1.1 부함수의 정의 ... 160
      5.1.2 부함수의 선언 ... 162
      5.1.3 부함수의 호출 ... 163
      5.1.4 함수의 인수 전달방법 ... 166
      5.1.5 부함수의 활용 ... 171
   5.2 매크로 함수와 재귀함수 ... 176
      5.2.1 매크로 함수의 활용 ... 177
      5.2.2 재귀함수의 활용 ... 179
   5.3 변수의 종류와 속성 ... 182
      5.3.1 자동변수 ... 182
      5.3.2 외부변수 ... 183
      5.3.3 정적변수 ... 185
      5.3.4 레지스터 변수 ... 186
   프로젝트 ... 187
   연습문제 5 ... 193
제6장 구조체와 공용체 ... 199
   6.1 구조체의 기본요소 ... 201
      6.1.1 구조체의 정의와 구조체 변수의 선언 ... 201
      6.1.2 구조체의 멤버 참조와 초기화 ... 203
      6.1.3 typedef 자료형 ... 209
   6.2 구조체 배열 ... 210
   6.3 구조체의 중첩 ... 213
   6.4 함수와 구조체 ... 216
   6.5 비트 필드 ... 220
   6.6 공용체 ... 223
   응용 프로그램 ... 227
   프로젝트 ... 231
   연습문제 6 ... 232
제7장 포인터 ... 237
   7.1 포인터란? ... 239
      7.1.1 포인터 변수의 선언 ... 239
      7.1.2 & 연산자 ... 240
      7.1.3 * 연산자 ... 244
   7.2 포인터 연산 ... 248
   7.3 포인터와 배열 ... 252
      7.3.1 포인터와 1차원 배열 ... 252
      7.3.2 포인터와 다차원 배열 ... 254
      7.3.3 포인터 배열 ... 259
      7.3.4 이중 포인터 ... 262
   7.4 포인터와 구조체 ... 265
      7.4.1 구조체 포인터 ... 265
      7.4.2 구조체 포인터 전달 ... 267
      7.4.3 자기 참조 구조체 ... 269
   7.5 포인터와 함수 ... 271
      7.5.1 포인터와 함수 인자 전달 ... 271
      7.5.2 함수 포인터 ... 275
   프로젝트 ... 278
   연습문제 7 ... 281
제8장 프리프로세서와 라이브러리 함수 ... 287
   8.1 프리프로세서 ... 289
      8.1.1 define 문 ... 289
      8.1.2 include 문 ... 296
   8.2 조건부 컴파일 ... 300
      8.2.1 undef 문 ... 300
      8.2.2 if, elif, else, endif, ifdef, ifndef 문 ... 301
      8.2.3 프리프로세서문을 위한 연산자 ... 304
   8.3 표준 라이브러리 함수 ... 306
      8.3.1 문자처리 함수(〈ctype.h〉) ... 306
      8.3.2 문자열 처리 함수(〈string.h〉) ... 307
      8.3.3 문자열 변환 처리 함수(〈stdlib.h〉) ... 308
   연습문제 8 ... 310
제9장 수치해석 관련 프로그램 ... 313
   9.1 Newton 방법 ... 315
   9.2 Determinant(행렬식) ... 320
   9.3 Inverse Matrix(역행렬) ... 322
   9.4 Gauss Elimination(가우스 소거법) ... 326
   9.5 Simpson's Rule(심슨의 수치적분방법) ... 330
   9.6 Initial-Value Problem(초기값 문제) ... 332
   9.7 Monte Carlo 방법 ... 336
   연습문제 9 ... 339
제10장 그래프와 응용 프로그램 ... 343
   10.1 그래프의 개요 ... 345
   10.2 웃는 얼굴 그리기 ... 346
   10.3 전투기의 비행 ... 348
   10.4 Teteris 게임 ... 352
제11장 C++의 개요 ... 363
   11.1 C++란? ... 365
   11.2 객체 지향 개념 ... 365
   11.3 C++의 예제 ... 368
부록 ... 371
   부록 1. 복소수를 취급하는 함수 ... 373
   부록 2. 수학용어와 기초 ... 380
   부록 3. 문자의 아스키 코드값 ... 384
   부록 4. 확장 키 코드값 ... 393
   참고 문헌 ... 395
   찾아보기 ... 397
닫기