HelpFeedback
Tan: C Programming
Information Center
About the Authors
Preface
Features
Table of Contents
Supplements
Text Organisation
Walk Through


Student Edition
Instructor Edition
C Programming: A Q & A Approach

H.H. Tan, Morrison Knudsen Corporation
T.B. D'Orazio, San Francisco State University
Siu Hang Or, Chinese University of Hong Kong
Marian Choy, The University of Hong Kong

ISBN: 0071311165
Copyright year: 2012

Text Organisation



The first chapter is an introduction to computing that assumes students have no basic knowledge other than using a computer for simple word processing. It introduces the concept of programming languages, describes hardware, the way information is stored in memory, computer languages, compilers, and software engineering. The purpose of this chapter is to introduce students to the way that computers work and the concepts behind software design.

Chapters 2 through 4 cover the fundamental aspects of a procedural programming language, basic syntax and control structures. C library functions are described and their use illustrated in these chapters. In Chapter 5, user-defined functions are covered, emphasising the concepts of modularity and reusable code. Pointers are gently introduced, being integrated with the development of functions that use addresses as arguments in function calls. After this chapter, the effects of using C features with user-defined functions are described.

Chapter 6 focuses on numerical arrays.

Chapter 7 describes both strings and pointers. Because strings are most commonly manipulated using addresses, this chapter is well suited to describing working with pointers to modify memory. Chapter 8 covers structures in C and their uses in creating linked lists, stacks, queues and binary trees. Also, large program design is covered in this chapter. This is included because engineering programs can quickly become very large. The importance of using C features to handle large programs is considered fundamental to preparing students for employment with firms that develop commercial software products in engineering.

We have called Chapter 9 (available at www.mheducation.asia/olc/cprogramming) An Introduction to C++, but it is actually much more. Because of the thorough coverage we have given C we are able to describe many of the core issues of object oriented programming with C++. Classes, encapsulation and polymorphism are described in simple terms. This chapter is richly illustrated. The simple language and illustrations provide students the background to use many of the fundamental C++ features.

Most chapters are divided into two parts, the Lessons and the Application Programs. The Lessons teach syntax, form and basic constructs. The Application Programs illustrate how what is taught in the lessons can be used to solve real engineering and computer science problems. The Application Programs show the thought processes a developer goes through to create a program. The goal of the Application Programs is to give students the ability to follow a structured methodology in developing their own programs.


To obtain an instructor login for this Online Learning Center, ask your local sales representative.. If you're an instructor thinking about adopting this textbook, request a free copy for review.