0과 1을 공부하다.

[C] 윤성우 열혈 C프로그래밍 본문

Study/Book Recommend (Computer)

[C] 윤성우 열혈 C프로그래밍

Developer_Jay 2021. 9. 12. 01:14
728x90

 

목차

Part 01 C언어의 기본
Chapter 01 이것이 C언어다.
01-1 C언어의 개론적인 이야기
01-2 C 프로그램의 완성과정

Chapter 02 프로그램의 기본구성
02-1 Hello world! 들여다보기
02-2 주석이 들어가야 완성된 프로그램
02-3 printf 함수의 기본적인 이해
02 프로그래밍 문제의 답안

Chapter 03 변수와 연산자
03-1 연산을 위한 연산자와 값의 저장을 위한 변수
03-2 C언어의 다양한 연산자 소개
03-3 키보드로부터의 데이터 입력과 C언어의 키워드
03 프로그래밍 문제의 답안

Chapter 04 데이터 표현방식의 이해
04-1 컴퓨터가 데이터를 표현하는 방식
04-2 정수와 실수의 표현방식
04-3 비트 연산자
04 프로그래밍 문제의 답안

Chapter 05 상수와 기본 자료형
05-1 C언어가 제공하는 기본 자료형의 이해
05-2 문자의 표현방식과 문자를 위한 자료형
05-3 상수에 대한 이해
05-4 자료형의 변환
05 프로그래밍 문제의 답안

Chapter 06 printf 함수와 scanf 함수 정리하기
06-1 printf 함수 이야기
06-2 scanf 함수 이야기

Chapter 07 반복실행을 명령하는 반복문
07-1 while문에 의한 문장의 반복
07-2 do~while문에 의한 문장의 반복
07-3 for문에 의한 문장의 반복
07 프로그래밍 문제의 답안

Chapter 08 조건에 따른 흐름의 분기
08-1 조건적 실행과 흐름의 분기
08-2 반복문의 생략과 탈출: continue & break
08-3 switch문에 의한 선택적 실행과 goto문
08 프로그래밍 문제의 답안

Chapter 09 C언어의 핵심! 함수!
09-1 함수를 정의하고 선언하기
09-2 변수의 존재기간과 접근범위 1: 지역변수
09-3 변수의 존재기간과 접근범위 2: 전역변수, static 변수, register 변수
09-4 재귀함수에 대한 이해
09 프로그래밍 문제의 답안

Chapter 10 도전! 프로그래밍1

Part 02 포인터와 배열의 시작
Chapter 11 1차원 배열
11-1 배열의 이해와 배열의 선언 및 초기화 방법
11-2 배열을 이용한 문자열 변수의 표현
11 프로그래밍 문제의 답안

Chapter 12 포인터의 이해
12-1 포인터란 무엇인가?
12-2 포인터와 관련 있는 연산자: & 연산자와 * 연산자
12 프로그래밍 문제의 답안

Chapter 13 포인터와 배열! 함께 이해하기
13-1 포인터와 배열의 관계
13-2 포인터 연산
13-3 상수 형태의 문자열을 가리키는 포인터
13-4 포인터 변수로 이뤄진 배열: 포인터 배열
13 프로그래밍 문제의 답안

Chapter 14 포인터와 함수에 대한 이해
14-1 함수의 인자로 배열 전달하기
14-2 Call-by-value vs. Call-by-reference
14-3 포인터 대상의 const 선언
14 프로그래밍 문제의 답안

Chapter 15 도전! 프로그래밍2


Part 03 포인터와 배열의 완성
Chapter 16 다차원 배열
16-1 다차원 배열의 이해와 활용
16-2 3차원 배열
16 프로그래밍 문제의 답안

Chapter 17 포인터의 포인터
17-1 포인터의 포인터에 대한 이해
17-2 다중 포인터 변수와 포인터의 필요성
17 프로그래밍 문제의 답안

Chapter 18 다차원 배열과 포인터의 관계
18-1 2차원 배열이름의 포인터 형
18-2 2차원 배열이름의 특성과 주의사항
18 프로그래밍 문제의 답안

Chapter 19 함수 포인터와 void 포인터
19-1 함수 포인터와 void 포인터
19-2 main 함수로의 인자전달

Chapter 20 도전! 프로그래밍3

Part 04 C언어의 깊은 이해
Chapter 21 문자와 문자열 관련 함수
21-1 스트림과 데이터의 이동
21-2 문자 단위 입출력 함수
21-3 문자열 단위 입출력 함수
21-4 표준 입출력과 버퍼
21-5 입출력 이외의 문자열 관련 함수
21 프로그래밍 문제의 답안

Chapter 22 구조체와 사용자 정의 자료형1
22-1 구조체란 무엇인가?
22-2 구조체와 배열 그리고 포인터
22 프로그래밍 문제의 답안

Chapter 23 구조체와 사용자 정의 자료형2
23-1 구조체의 정의와 typedef 선언
23-2 함수로의 구조체 변수 전달과 반환
23-3 구조체의 유용함에 대한 논의와 중첩 구조체
23-4 공용체(Union Type)의 정의와 의미
23-5 열거형(Enumerated Type)의 정의와 의미
23 프로그래밍 문제의 답안

Chapter 24 파일 입출력
24-1 파일과 스트림(Stream), 그리고 기본적인 파일의 입출력
24-2 파일의 개방 모드(Mode)
24-3 파일 입출력 함수의 기본
24-4 텍스트 데이터와 바이너리 데이터를 동시에 입출력 하기
24-5 임의 접근을 위한 '파일 위치 지시자'의 이동
24 프로그래밍 문제의 답안

Chapter 25 메모리 관리와 메모리의 동적 할당
25-1 C언어의 메모리 구조
25-2 메모리의 동적 할당
25 프로그래밍 문제의 답안

Chapter 26 매크로와 선행처리기(Preprocessor)
26-1 선행처리기와 매크로
26-2 대표적인 선행처리 명령문
26-3 조건부 컴파일(Conditional Compilation)을 위한 매크로
26-4 매개변수의 결합과 문자열화
26 프로그래밍 문제의 답안

Chapter 27 파일의 분할과 헤더파일의 디자인
27-1 파일의 분할
27-2 둘 이상의 파일을 컴파일하는 방법과 static에 대한 고찰
27-3 헤더파일의 디자인과 활용

Chapter 28 도전! 프로그래밍4

Appendix
Appendix-A 아스키 코드 표
Appendix-B 수학관련 함수들
Appendix-C 가변인자 함수에 대한 이해

특징 

- C언어를 선택하여 프로그래밍을 입문하는 학습자를 위해 언어의 개론적인 파트부터 파일 분할파트까지 다룬다. 각 함수의 구체적인 내용을 다루고 있으며, 메모리와 같은 컴퓨팅 관점에서 설명되어 있고 코드 작성의 가독성 측면에서 작성하는 요령도 설명되어 있다.  또한 이 책의 가장 큰 장점으로 파트별로 "도전 ! 프로그래밍"을 출제하여 앞에서 배운 이론을 활용하여 복습할 기회가 있다.   

장/단점

- 장점: 자세한 설명과 컴퓨팅 구조적인 설명이 첨가되어 있어 매우 이해하기 좋았고 유익했음. 또한 part 별로 코딩문제를 출제하여 복습할 기회가 있어 유익함(도전 프로그래밍). 앞서 언급한 코딩문제는 다소 난이도가 있는 문제가 있어 많은 고민을 통해 학습하기 좋다.   

- 단점: 복습을 하는 학습자에게는 많은 내용 설명과 정보가 담겨 있어 유익하지만 C 프로그래밍을 선택하여 처음으로 프로그래밍에 입문하는 학습자가 학습하기에는 다소 난이도가 높음.   

▣ 평점 및 한줄평: 

- [★★★★★] : 최고의 C프로그래밍 서적. 단, 첫 프로그래밍 서적으로 선택하기에는 난이도가 높은 편임. 

728x90
Comments