
C Language Express
Description
Book Introduction
Welcome to the world of easier and more fun programming!
The C language is one of the most widely used languages in practical engineering fields.
The C language is concise, efficient, and powerful, allowing for low-level hardware control.
The biggest reason I wrote this book was to help beginners enter the world of programming more easily and enjoyably through this book.
To this end, this book is structured as follows.
First, we used as many appropriate pictures as possible to make it more familiar, less boring, and easier for readers to understand.
Beginners can quickly understand related concepts more easily through pictures.
Second, the concepts and principles for each topic were explained in detail, and the explanations were in a question-and-answer format to make them familiar to readers.
Third, sufficient example programs are provided within the limits of the page to provide a reference for beginners.
Fourth, we provide step-by-step practice problems so that you can practice on your own without having to purchase a separate practice book.
Users can learn what they have learned by adding and editing the given example source.
The C language is one of the most widely used languages in practical engineering fields.
The C language is concise, efficient, and powerful, allowing for low-level hardware control.
The biggest reason I wrote this book was to help beginners enter the world of programming more easily and enjoyably through this book.
To this end, this book is structured as follows.
First, we used as many appropriate pictures as possible to make it more familiar, less boring, and easier for readers to understand.
Beginners can quickly understand related concepts more easily through pictures.
Second, the concepts and principles for each topic were explained in detail, and the explanations were in a question-and-answer format to make them familiar to readers.
Third, sufficient example programs are provided within the limits of the page to provide a reference for beginners.
Fourth, we provide step-by-step practice problems so that you can practice on your own without having to purchase a separate practice book.
Users can learn what they have learned by adding and editing the given example source.
- You can preview some of the book's contents.
Preview
index
Chapter 01 Programming Concepts
1.1 What is Programming?
1.2 Programming Language
1.3 Introduction to the C Language
1.4 What is an algorithm?
[LAB] Printer Repair Algorithm
[LAB] Grade Average Calculator
[Mini Project] Algorithm for finding the maximum value in a list of numbers
Q&A
ㆍExercise
Chapter 02 Program Writing Process
2.1 Program Development Process
2.2 Integrated Development Environment
2.3 Installing Visual Studio
2.4 Using Visual Studio
2.5 Brief description of the example program
2.6 Application of the example program
[LAB] Let's do some simple calculations.
[LAB] Let's print the multiplication table.
2.7 Bug Fixes
[Mini Project] Let's handle errors
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 03 C Program Components
3.1 Addition Program #1
3.2 Notes
3.3 Preprocessor
3.4 Function
3.5 Variables
3.6 Formulas and Operations
3.7 printf()
[LAB] Arithmetic Operations
3.8 scanf()
3.9 Addition Program #2
[LAB] Program to calculate the area of a circle
[LAB] Exchange Rate Calculation Program
[LAB] Average Calculation Program
[Mini Project] Perimeter and Area of a Square
Summary
ㆍExercise
ㆍProgramming
Chapter 04 Variables and Data Types
4.1 Variables and Constants
4.2 Data types
4.3 Integer
4.4 Floating point type
4.5 Character type
[LAB] Initial value of variable
[Mini Project] Calculating the Sunlight Arrival Time
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 05 Formulas and Operators
5.1 Formulas and Operators
5.2 Arithmetic Operators
[LAB] Calculating Change
5.3 Assignment Operators
5.4 Relational Operators
5.5 Logical Operators
[LAB] Leap Year Determination
5.6 Conditional Operators
5.7 Comma Operator
5.8 Bitwise Operators
[LAB] Outputting decimal numbers to binary
[LAB] Encryption using XOR
5.9 Type Conversion
5.10 Operator Precedence and Associativity Rules
[LAB] Converting Fahrenheit to Celsius
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 06 Conditional Statements
6.1 Control statements
6.2 if statement
6.3 if-else statement
6.4 Multiple if statements
[LAB] Quadratic Equation
[LAB] Arithmetic Calculator
6.5 switch statement
[LAB] Arithmetic Calculator (Switch Version)
6.6 goto statement
[Mini Project] Creating an Income Tax Calculator
Summary
ㆍExercise
ㆍProgramming
Chapter 07 Loops
7.1 The concept of repetition
7.2 while statement
7.3 Using sentinel values in repeat loops
[LAB] Finding the Greatest Common Divisor
[LAB] Half-life
7.4 do…while statement
[LAB] Number Guessing Game
7.5 for Moon
7.6 Nested loops
[LAB] Finding Right Triangles
7.7 Infinite loops and break, continue
[LAB] Finding Pi
[LAB] Compound Interest Calculation
[LAB] Automatically Generating Math Problems
[LAB] Gambler's Probability
ㆍQ&A
ㆍExercise
ㆍProgramming
Chapter 08 Functions
8.1 What is a function?
8.2 Function Definition
8.3 Parameters and Return Values
[LAB] Birthday Celebration Function
[LAB] get_integer() function that receives an integer
[LAB] add() function that calculates the sum of integers
[LAB] Factorial Calculation Function
[LAB] Temperature Conversion Program
[LAB] Calculating Combinations
[LAB] Finding Prime Numbers
8.4 Function prototype
8.5 Standard Library Functions (Random Numbers)
[LAB] Coin Toss Game
[LAB] Car Racing Program
8.6 Standard Library Functions (Mathematical Functions)
[LAB] Time Matching Game
[LAB] Measuring Tree Height
[LAB] Drawing Trigonometric Functions
8.7 Why Use Functions?
[Mini Project] Writing an Engineering Calculator Program
ㆍAdvanced Topic
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 09 Variable Scope and Recursive Calls
9.1 Variable Properties
9.2 Local Variables
9.3 Global Variables
9.4 Survival Time
[LAB] Implementing a Bank Account
[LAB] Reset only once
9.5 Connection
9.6 What storage type do you use?
[LAB] Writing a Random Number Generator (Linear Congruential Generator)
9.7 Variable parameter functions
9.8 Circular Calls
[Mini Project] Tower of Hanoi
ㆍAdvanced Topic
Summary
ㆍExercise
ㆍProgramming
Chapter 10 Arrays
10.1 What is an array?
10.2 Array Initialization
[LAB] Dice Roll
[LAB] Theater Reservation System
[LAB] Finding the Minimum
10.3 Arrays and Functions
10.4 Sorting
10.5 Navigation
10.6 Two-dimensional arrays
[LAB] Image Processing
[Mini Project] TIC-TAC-TOE Game
Summary
ㆍExercise
ㆍProgramming
Chapter 11 Pointers
11.1 What is a pointer?
11.2 Indirect reference operator ?
[LAB] Embedded Programming Experience #1
11.3 Things to be aware of when using pointers
11.4 Pointer Arithmetic
11.5 Pointers and Functions
11.6 Pointers and Arrays
[LAB] Image Processing
11.7 Advantages of Using Pointers
[Mini Project] Self-Driving Car
Summary
ㆍExercise
ㆍProgramming
Chapter 12 Characters and Strings
12.1 Characters and Strings
12.2 Character Input/Output Library
12.3 String Input/Output Library
12.4 Character Processing Library
[LAB] Word Counting
[LAB] Verifying a valid password
12.5 String Handling Library Functions
[LAB] Short Answer Quiz
12.6 String to Number Conversion
[LAB] Automatically generate video file names
12.7 How to store multiple strings
[LAB] Implementation of a Korean-English Dictionary
[LAB] Message Encryption
[Mini Project] Hangman Game
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 13 Structures
13.1 What is a structure?
13.2 Declaring, initializing, and using structures
[LAB] Representing points in two-dimensional space as structures
[LAB] Representing a rectangle as a point structure
13.3 Array of structures
13.4 Structures and Pointers
13.5 Structures and Functions
[LAB] Vector Operations
13.6 Union
13.7 Enumerations
13.8 typedef
[LAB] Defining a point in two-dimensional space as a POINT type
[Mini Project] 4-option multiple choice quiz program
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 14 Using Pointers
14.1 Double Pointer
14.2 Pointer Arrays
14.3 Array Pointers
14.4 Function Pointers
14.5 Multidimensional Arrays and Pointers
14.6 const and volatile pointers
14.7 void pointers
14.8 Arguments to the main function
[LAB] Using Program Arguments
[LAB] Using the qsort() function
[Mini Project] Finding Roots Using Dichotomy
Summary
ㆍExercise
ㆍProgramming
Chapter 15 Streams and File Input/Output
15.1 Stream
15.2 File Basics
15.3 Reading and Writing Text Files
[LAB] Searching for a specific string in a file
15.4 Reading and Writing Binary Files
[LAB] Saving Student Information to a Binary File
[LAB] Copying Image Files
[LAB] File Compression (RLE)
[LAB] File Encryption (XOR)
15.5 Random Access
[Mini Project] Creating an Address Book
Summary
ㆍQ&A
ㆍExercise
ㆍProgramming
Chapter 16 Preprocessing and Multiple Source Files
16.1 What is a preprocessor?
16.2 Simple Macros
16.3 Function Macros
[LAB] ASSERT Macro
[LAB] Writing a Bit Macro
16.4 #ifdef, #endif
[LAB] Defining Multiple Versions
[LAB] Separation of Linux and Windows versions
16.5 #if, #else, #endif
16.6 Multiple Source Files
[LAB] Preventing Duplicate Inclusion of Header Files
16.7 Bit Field Structure
[LAB] Hardware Control Using Bit Fields and Unions
[Mini Project] Using the Preprocessor
Summary
ㆍExercise
ㆍProgramming
Chapter 17 Dynamic Memory
17.1 What is dynamically allocated memory?
17.2 Basics of Dynamic Memory Allocation
[LAB] Grade Processing Using Dynamic Arrays
17.3 calloc() and realloc()
[LAB] Dynamic memory that stores any string
17.4 Let's create a structure dynamically.
17.5 What is a linked list?
[Mini Project] Film Management Program
ㆍAdvanced Topic
Summary
ㆍExercise
ㆍProgramming
ㆍSearch
1.1 What is Programming?
1.2 Programming Language
1.3 Introduction to the C Language
1.4 What is an algorithm?
[LAB] Printer Repair Algorithm
[LAB] Grade Average Calculator
[Mini Project] Algorithm for finding the maximum value in a list of numbers
Q&A
ㆍExercise
Chapter 02 Program Writing Process
2.1 Program Development Process
2.2 Integrated Development Environment
2.3 Installing Visual Studio
2.4 Using Visual Studio
2.5 Brief description of the example program
2.6 Application of the example program
[LAB] Let's do some simple calculations.
[LAB] Let's print the multiplication table.
2.7 Bug Fixes
[Mini Project] Let's handle errors
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 03 C Program Components
3.1 Addition Program #1
3.2 Notes
3.3 Preprocessor
3.4 Function
3.5 Variables
3.6 Formulas and Operations
3.7 printf()
[LAB] Arithmetic Operations
3.8 scanf()
3.9 Addition Program #2
[LAB] Program to calculate the area of a circle
[LAB] Exchange Rate Calculation Program
[LAB] Average Calculation Program
[Mini Project] Perimeter and Area of a Square
Summary
ㆍExercise
ㆍProgramming
Chapter 04 Variables and Data Types
4.1 Variables and Constants
4.2 Data types
4.3 Integer
4.4 Floating point type
4.5 Character type
[LAB] Initial value of variable
[Mini Project] Calculating the Sunlight Arrival Time
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 05 Formulas and Operators
5.1 Formulas and Operators
5.2 Arithmetic Operators
[LAB] Calculating Change
5.3 Assignment Operators
5.4 Relational Operators
5.5 Logical Operators
[LAB] Leap Year Determination
5.6 Conditional Operators
5.7 Comma Operator
5.8 Bitwise Operators
[LAB] Outputting decimal numbers to binary
[LAB] Encryption using XOR
5.9 Type Conversion
5.10 Operator Precedence and Associativity Rules
[LAB] Converting Fahrenheit to Celsius
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 06 Conditional Statements
6.1 Control statements
6.2 if statement
6.3 if-else statement
6.4 Multiple if statements
[LAB] Quadratic Equation
[LAB] Arithmetic Calculator
6.5 switch statement
[LAB] Arithmetic Calculator (Switch Version)
6.6 goto statement
[Mini Project] Creating an Income Tax Calculator
Summary
ㆍExercise
ㆍProgramming
Chapter 07 Loops
7.1 The concept of repetition
7.2 while statement
7.3 Using sentinel values in repeat loops
[LAB] Finding the Greatest Common Divisor
[LAB] Half-life
7.4 do…while statement
[LAB] Number Guessing Game
7.5 for Moon
7.6 Nested loops
[LAB] Finding Right Triangles
7.7 Infinite loops and break, continue
[LAB] Finding Pi
[LAB] Compound Interest Calculation
[LAB] Automatically Generating Math Problems
[LAB] Gambler's Probability
ㆍQ&A
ㆍExercise
ㆍProgramming
Chapter 08 Functions
8.1 What is a function?
8.2 Function Definition
8.3 Parameters and Return Values
[LAB] Birthday Celebration Function
[LAB] get_integer() function that receives an integer
[LAB] add() function that calculates the sum of integers
[LAB] Factorial Calculation Function
[LAB] Temperature Conversion Program
[LAB] Calculating Combinations
[LAB] Finding Prime Numbers
8.4 Function prototype
8.5 Standard Library Functions (Random Numbers)
[LAB] Coin Toss Game
[LAB] Car Racing Program
8.6 Standard Library Functions (Mathematical Functions)
[LAB] Time Matching Game
[LAB] Measuring Tree Height
[LAB] Drawing Trigonometric Functions
8.7 Why Use Functions?
[Mini Project] Writing an Engineering Calculator Program
ㆍAdvanced Topic
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 09 Variable Scope and Recursive Calls
9.1 Variable Properties
9.2 Local Variables
9.3 Global Variables
9.4 Survival Time
[LAB] Implementing a Bank Account
[LAB] Reset only once
9.5 Connection
9.6 What storage type do you use?
[LAB] Writing a Random Number Generator (Linear Congruential Generator)
9.7 Variable parameter functions
9.8 Circular Calls
[Mini Project] Tower of Hanoi
ㆍAdvanced Topic
Summary
ㆍExercise
ㆍProgramming
Chapter 10 Arrays
10.1 What is an array?
10.2 Array Initialization
[LAB] Dice Roll
[LAB] Theater Reservation System
[LAB] Finding the Minimum
10.3 Arrays and Functions
10.4 Sorting
10.5 Navigation
10.6 Two-dimensional arrays
[LAB] Image Processing
[Mini Project] TIC-TAC-TOE Game
Summary
ㆍExercise
ㆍProgramming
Chapter 11 Pointers
11.1 What is a pointer?
11.2 Indirect reference operator ?
[LAB] Embedded Programming Experience #1
11.3 Things to be aware of when using pointers
11.4 Pointer Arithmetic
11.5 Pointers and Functions
11.6 Pointers and Arrays
[LAB] Image Processing
11.7 Advantages of Using Pointers
[Mini Project] Self-Driving Car
Summary
ㆍExercise
ㆍProgramming
Chapter 12 Characters and Strings
12.1 Characters and Strings
12.2 Character Input/Output Library
12.3 String Input/Output Library
12.4 Character Processing Library
[LAB] Word Counting
[LAB] Verifying a valid password
12.5 String Handling Library Functions
[LAB] Short Answer Quiz
12.6 String to Number Conversion
[LAB] Automatically generate video file names
12.7 How to store multiple strings
[LAB] Implementation of a Korean-English Dictionary
[LAB] Message Encryption
[Mini Project] Hangman Game
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 13 Structures
13.1 What is a structure?
13.2 Declaring, initializing, and using structures
[LAB] Representing points in two-dimensional space as structures
[LAB] Representing a rectangle as a point structure
13.3 Array of structures
13.4 Structures and Pointers
13.5 Structures and Functions
[LAB] Vector Operations
13.6 Union
13.7 Enumerations
13.8 typedef
[LAB] Defining a point in two-dimensional space as a POINT type
[Mini Project] 4-option multiple choice quiz program
ㆍQ&A
Summary
ㆍExercise
ㆍProgramming
Chapter 14 Using Pointers
14.1 Double Pointer
14.2 Pointer Arrays
14.3 Array Pointers
14.4 Function Pointers
14.5 Multidimensional Arrays and Pointers
14.6 const and volatile pointers
14.7 void pointers
14.8 Arguments to the main function
[LAB] Using Program Arguments
[LAB] Using the qsort() function
[Mini Project] Finding Roots Using Dichotomy
Summary
ㆍExercise
ㆍProgramming
Chapter 15 Streams and File Input/Output
15.1 Stream
15.2 File Basics
15.3 Reading and Writing Text Files
[LAB] Searching for a specific string in a file
15.4 Reading and Writing Binary Files
[LAB] Saving Student Information to a Binary File
[LAB] Copying Image Files
[LAB] File Compression (RLE)
[LAB] File Encryption (XOR)
15.5 Random Access
[Mini Project] Creating an Address Book
Summary
ㆍQ&A
ㆍExercise
ㆍProgramming
Chapter 16 Preprocessing and Multiple Source Files
16.1 What is a preprocessor?
16.2 Simple Macros
16.3 Function Macros
[LAB] ASSERT Macro
[LAB] Writing a Bit Macro
16.4 #ifdef, #endif
[LAB] Defining Multiple Versions
[LAB] Separation of Linux and Windows versions
16.5 #if, #else, #endif
16.6 Multiple Source Files
[LAB] Preventing Duplicate Inclusion of Header Files
16.7 Bit Field Structure
[LAB] Hardware Control Using Bit Fields and Unions
[Mini Project] Using the Preprocessor
Summary
ㆍExercise
ㆍProgramming
Chapter 17 Dynamic Memory
17.1 What is dynamically allocated memory?
17.2 Basics of Dynamic Memory Allocation
[LAB] Grade Processing Using Dynamic Arrays
17.3 calloc() and realloc()
[LAB] Dynamic memory that stores any string
17.4 Let's create a structure dynamically.
17.5 What is a linked list?
[Mini Project] Film Management Program
ㆍAdvanced Topic
Summary
ㆍExercise
ㆍProgramming
ㆍSearch
Publisher's Review
A revised edition with new features and additions!
The following points have been supplemented and added in the 4th revised edition:
ㆍThe scratch content of Chapter 1 was deleted and content related to the algorithm was added.
The entire picture has been redrawn and replaced with a clearer and easier to understand picture.
.
ㆍSome of the practice problems and programming problems have been replaced and upgraded.
We deleted overly difficult or duplicate problems and added new and interesting problems.
Additionally, programming problems were designed to help with writing programs by providing difficulty levels, topics, and hints.
ㆍAn unfinished mini-project problem is presented at the end of each chapter.
These problems can be used as homework during learning.
ㆍPractical problems from various fields that may be of interest have been added to each chapter.
As you write programs with hints, you will also gradually develop your problem-solving skills.
The following points have been supplemented and added in the 4th revised edition:
ㆍThe scratch content of Chapter 1 was deleted and content related to the algorithm was added.
The entire picture has been redrawn and replaced with a clearer and easier to understand picture.
.
ㆍSome of the practice problems and programming problems have been replaced and upgraded.
We deleted overly difficult or duplicate problems and added new and interesting problems.
Additionally, programming problems were designed to help with writing programs by providing difficulty levels, topics, and hints.
ㆍAn unfinished mini-project problem is presented at the end of each chapter.
These problems can be used as homework during learning.
ㆍPractical problems from various fields that may be of interest have been added to each chapter.
As you write programs with hints, you will also gradually develop your problem-solving skills.
GOODS SPECIFICS
- Date of issue: January 17, 2023
- Page count, weight, size: 746 pages | 1,674g | 215*275*25mm
- ISBN13: 9788970506678
- ISBN10: 8970506675
You may also like
카테고리
korean
korean