The book enumerates the concepts related to C programming language. The best way to learn any programming language is through examples. The book uses the same approach - each concept is followed by an appropriate example to understand the implementation of the learned concepts. The book begins with the basic components of a computer and their functions, concepts of hardware and software, types of software, compilers, interpreter, linkers and loaders, programming languages, flowcharts and algorithms. The book explains C program structure, data types, constants, variables, expressions, operators, I/O functions and control structures. It teaches you how to use arrays, strings, functions, pointers, files, structures, dynamic memory allocation, storage classes and command line arguments. It also explains the searching and sorting algorithms. Questions and answers at the end of each chapter help readers to revise the essential concepts covered in the chapter.