Preface xi
topics covered are parts of a computer system, features of C language, rules for writing a program,
methods to edit and run the programs with Turbo C compiler, etc.
Chapter 2 deals with C declaration. It focuses on C data types, differences between signed and
unsigned data types, variables, constants, C keywords, type conversion, dynamic initialization, etc.
Chapter 3 explains various C operators and their priorities. This chapter presents arithmetic, rela-
tional, and logical operators. It also embodies increment, decrement (unary operators) and assign-
ment operators. Other operators such as comma, conditional operators and bitwise operators are
presented in this chapter. Precedence of operators and associativity rule are also explained.
Chapter 4 enlightens the readers with formatted input and output functions such as scanf() and
printf() functions. The unformatted functions such as putchar(), getche(), gets(),
etc., are described in this chapter. The special symbols such as escape sequences together with their
applications have also been discussed.
Chapter 5 covers the decision-making statements supported by C language. This chapter details
how the control can be transferred from one part of the program to other part. The programmer can
make the program powerful by using control statements such as if, if-else, nested if-else
statements and switch case. To change the flow of the program, the programmer can use key-
words such as break, continue and goto.
Chapter 6 discusses control loop structures that explain ‘how’ statements are executed several
times until a condition is satisfied. In this chapter, the reader follows program loop structures,
which is also known as iterative or repetitive structure. Three types of loop control statements are
illustrated, with programming examples. They are for, while and do-while loop statements.
Syntaxes of these control statements are briefed.
Chapter 7 covers one-dimensional, two-dimensional and multidimensional arrays. It deals with
both integer and character arrays. A description on accessing and displaying array elements on
the screen is presented in this chapter. Various operations on an array that can be performed are
described in this chapter.
Chapter 8 focusses on strings. This chapter teaches the reader how to declare and initialize a string.
The various formats for displaying the strings are described through numerous examples. String
handling has a strong impact in real-life string problems such as conversion of lower to upper case,
reversing, concatenation, comparing, searching and replacing of string elements. Methods of per-
forming these operations with and without standard library functions are also explained.
Chapter 9 deals with the most important feature of the C language, i.e. pointers. This chapter
is important but is difficult to understand easily. Through examples, the reader is made famil-
iar with pointers. The reader is enlightened about declaration and initialization of pointers. The
learner studies how to access variables using pointers. How pointers are used to allocate memory
dynamically at run time is illustrated using memory allocation functions such as malloc()
and calloc() functions. How memory is handled efficiently with pointers is explained in this
chapter. This chapter consists of arithmetic operations on pointers, pointers and arrays, pointers to
pointers, etc.
Chapter 10 is one of the important chapters on functions. After reading this chapter, a reader will
learn how a large-sized program is divided into smaller ones and how a modular program should be
developed. A programmer learns the definition and declaration of a function. In this chapter, topics
such as return statements, types of functions, functions with passing arguments, etc., are described
in detail. “Call by value” and “call by reference” and the answers are given with many program-
ming examples. The recursive nature of function is also described. Direct and indirect recursive
functions have been explained clearly.
A01_ITL-ESL4791_01_SE_PREL.indd xiA01_ITL-ESL4791_01_SE_PREL.indd xi 12/24/2012 4:51:47 PM12/24/2012 4:51:47 PM