Chapter 01 프로그램 만들기01-1 프로그램과 C 언어 __C 언어의 탄생__C 언어의 장점01-2 컴파일과 컴파일러 사용법__비주얼 스튜디오 설치하기__프로젝트 생성과 소스 파일 작성__소스 파일 컴파일하기__실행 파일 실행하기[좀 더 알아보기] 프로젝트 템플릿 만들기[6가지 키워드로 끝내는 핵심 포인트][그림으로 정리하는 컴파일 과정 3단계][확인 문제]Chapter 02 상수와 데이터 출력02-1 C 프로그램의 구조와 데이터 출력 방법__프로그램과 main 함수 구조__문자열 출력 : 출력 함수(printf)의 사용법__제어 문자 출력__정수와 실수 출력[5가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제]02-2 상수와 데이터 표현 방법__정수 상수 표현법__실수 상수 표현법__문자와 문자열 상수 표현법__상수가 컴파일된 후의 비트 형태__정수 상수가 컴파일된 후의 비트 형태__실수 상수가 컴파일된 후의 비트 형태[좀 더 알아보기] 실수 상수의 오차[7가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]Chapter 03 변수와 데이터 입력03-1 변수__변수 선언 방법__정수 자료형__unsigned 정수 자료형__실수 자료형__문자열 저장__const를 사용한 변수__예약어와 식별자[6가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]03-2 데이터 입력 __scanf 함수의 사용법 __문자와 문자열의 입력[좀 더 알아보기] 비정상 종료되는 경우[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트] [확인 문제]Chapter 04 연산자04-1 산술 연산자, 관계 연산자, 논리 연산자__산술 연산자와 대입 연산자__증감 연산자__관계 연산자 __논리 연산자 __연산의 결괏값을 처리하는 방법 [좀 더 알아보기] 연산식은 컴퓨터 내부에서 어떻게 처리될까요?[좀 더 알아보기] CPU의 메모리와 우리가 알고 있는 메모리(RAM)는 어떻게 다른가요? [5가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제]04-2 그 외 유용한 연산자__형 변환 연산자__sizeof 연산자__복합대입 연산자__콤마 연산자 __조건 연산자__비트 연산자__연산자 우선순위와 연산 방향 [4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트] [확인 문제] [도전 실전 예제]Chapter 05 선택문05-1 if문__if문의 기본 형식 151__if ~ else문 153__if ~ else if ~ else문 156[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제]05-2 if문 활용과 switch ~ case문 __if문 중첩 __else 결합 문제 __switch ~ case문 [좀 더 알아보기] switch ~ case문을 if문으로 바꿔 보기[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제][도전 실전 예제]Chapter 06 반복문06-1 while문, for문, do ~ while문__while문__for문__do ~ while문[3가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]06-2 반복문 활용__중첩 반복문__break와 continue 분기문[3가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제][도전 실전 예제]Chapter 07 함수07-1 함수의 작성과 사용__함수 정의 __함수 호출과 반환 __함수 선언[4가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]07-2 여러 가지 함수 유형__매개변수가 없는 함수__반환값이 없는 함수__매개변수와 반환값이 모두 없는 함수__재귀호출 함수 __재귀호출과 반복문의 차이점 [5가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 08 배열08-1 배열의 선언과 사용__배열의 선언 __배열 초기화__배열과 반복문 __sizeof 연산자를 활용한 배열 처리[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] 08-2 문자를 저장하는 배열 __char형 배열의 선언과 초기화 __문자열 대입 __문자열 전용 입출력 함수 : gets, puts[좀 더 알아보기] 문자열의 끝에 널 문자가 없다면? [4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제][도전 실전 예제]Chapter 09 포인터09-1 포인터의 기본 개념__메모리의 주소__주소 연산자 __포인터와 간접 참조 연산자__여러 가지 포인터 사용해 보기__const를 사용한 포인터[3가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] 09-2 포인터 완전 정복을 위한 포인터 이해하기 __주소와 포인터의 차이 __주소와 포인터의 크기__포인터의 대입 규칙__포인터를 사용하는 이유[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트] [확인 문제][도전 실전 예제]Chapter 10 배열과 포인터10-1 배열과 포인터의 관계__배열명으로 배열 요소 사용하기__배열명 역할을 하는 포인터__배열명과 포인터의 차이__포인터의 뺄셈과 관계 연산[5가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]10-2 배열을 처리하는 함수__배열의 값을 출력하는 함수__배열 요소의 개수가 다른 배열도 출력하는 함수__배열에 값을 입력하는 함수[좀 더 알아보기] 함수의 매개변수 자리에 배열을 선언하는 경우[3가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 11 문자11-1 아스키 코드 값과 문자 입출력 함수__아스키 코드__scanf 함수를 사용한 문자 입력__getchar, putchar 함수[5가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트] [확인 문제]11-2 버퍼를 사용하는 입력 함수__scanf 함수가 문자를 입력하는 과정__scanf 함수 반환값 활용__getchar 함수를 사용한 문자열 입력__입력 버퍼 지우기[3가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제][도전 실전 예제]Chapter 12 문자열12-1 문자열과 포인터__문자열 상수 구현 방법__char 포인터로 문자열 사용__scanf 함수를 사용한 문자열 입력 __gets 함수를 사용한 문자열 입력__fgets 함수를 사용한 문자열 입력__표준 입력 함수의 버퍼 공유 문제 __문자열을 출력하는 puts, fputs 함수[좀 더 알아보기] 직접 구현해 보는 gets 함수[4가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]12-2 문자열 연산 함수__문자열을 대입하는 strcpy 함수__원하는 개수의 문자만을 복사하는 strncpy 함수__문자열을 붙이는 strcat, strncat 함수__문자열 길이를 계산하는 strlen 함수__문자열을 비교하는 strcmp, strncmp 함수__연산 함수 직접 구현[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 13 변수의 영역과 데이터 공유13-1 변수 사용 영역__지역 변수__블록 안에서 사용하는 지역 변수__전역 변수__정적 지역 변수__레지스터 변수[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트] [확인 문제]13-2 함수의 데이터 공유 방법__값을 복사해서 전달하는 방법__주소를 전달하는 방법__주소를 반환하는 함수[3가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 14 다차원 배열과 포인터 배열14-1 다차원 배열__2차원 배열 선언과 요소 사용__2차원 배열 초기화__2차원 char 배열__2차원 char 배열 초기화__3차원 배열[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제]14-2 포인터 배열__포인터 배열 선언과 사용__2차원 배열처럼 활용하는 포인터 배열[3가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 15 응용 포인터15-1 이중 포인터와 배열 포인터__이중 포인터 개념__이중 포인터 활용 1 : 포인터 값을 바꾸는 함수의 매개변수__이중 포인터 활용 2 : 포인터 배열을 매개변수로 받는 함수__배열 요소의 주소와 배열의 주소__2차원 배열과 배열 포인터__2차원 배열의 요소를 참조하는 원리[5가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] 15-2 함수 포인터와 void 포인터__함수 포인터의 개념__함수 포인터의 활용__void 포인터[4가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 16 메모리 동적 할당16-1 동적 할당 함수__malloc, free 함수__동적 할당 영역을 배열처럼 쓰기__기타 동적 할당 함수[좀 더 알아보기] 프로그램이 사용하는 메모리 영역과 그 특징 [5가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]16-2 동적 할당 저장 공간의 활용__동적 할당을 사용한 문자열 처리__동적 할당 영역에 저장한 문자열을 함수로 처리하는 예__main 함수의 명령행 인수 사용[3가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 17 사용자 정의 자료형17-1 구조체__구조체 선언과 멤버 사용__다양한 구조체 멤버__구조체 변수의 초기화와 대입 연산__구조체 변수를 함수 매개변수에 사용하기[4가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]17-2 구조체 활용, 공용체, 열거형__구조체 포인터와 -〉 연산자__구조체 배열__구조체 배열을 처리하는 함수__자기 참조 구조체__공용체__열거형__typedef를 사용한 형 재정의[5가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제][도전 실전 예제]Chapter 18 파일 입출력18-1 파일 개방과 입출력__파일 개방과 폐쇄__스트림 파일과 파일 포인터__문자 입력 함수: fgetc__문자 출력 함수: fputc__기본적으로 개방되는 표준 입출력 스트림 파일__텍스트 파일과 바이너리 파일__+ 개방 모드, fseek, rewind, feof 함수[4가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제]18-2 다양한 파일 입출력 함수__한 줄씩 입출력하는 함수: fgets, fputs__다양한 형태로 입출력하는 함수: fscanf, fprintf__스트림 파일의 버퍼 공유 문제와 fflush 함수__fread, fwrite 함수[6가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제] [도전 실전 예제]Chapter 19 전처리와 분할 컴파일19-1 전처리 지시자 __파일을 포함하는 #include__매크로명을 만드는 #define __#define을 사용한 매크로 함수__이미 정의된 매크로 __매크로 연산자 #과 ##__조건부 컴파일 지시자 [좀 더 알아보기] #pragma 지시자 [4가지 키워드로 끝내는 핵심 포인트][표로 정리하는 핵심 포인트][확인 문제] 19-2 분할 컴파일__분할 컴파일 방법__분할 컴파일에서 extern과 static의 용도__헤더 파일의 필요성과 중복 문제 해결 방법[6가지 키워드로 끝내는 핵심 포인트] [표로 정리하는 핵심 포인트][확인 문제][도전 실전 예제]부록 A 아스키 코드표 부록 B 선택 정렬 알고리즘부록 C 여기서 잠깐 모음__확인 문제 정답__찾아보기