text.skipToContent text.skipToNavigation

C By Discovery, 4th edition

  • W D. Foster
  • L S. Foster

Published by Pearson (August 15th 2004) - Copyright © 2005

4th edition

C By Discovery

ISBN-13: 9781576761700

Includes: Paperback
Free delivery
$133.32 $166.65

What's included

  • Paperback

    You'll get a bound printed text.

Overview

This book provides an introduction to the C programming language. It is widely known for its accurate and precise descriptions, its careful annotation of code, and its comprehensive coverage of topics.  KEY TOPICS: This book includes numerous "Learning Activities" which allow readers to immediately "do it" after they "read it" in the book. MARKET: This book is for readers interested in learning the C programming language.

Table of contents

Chap. 1   Getting Started

1.1 What to Expect from C 

1.2 Fundamentals-Reserved Words, Identifiers, the Character Set 

1.3 Subprograms or Functions in C 

1.4 An Introduction to Output in C

1.5 Input and Output with Variables

1.6 Arithmetic Operations 

1.7 Introduction to Functions and Structured Programming in C 

Language Elements Introduced in This Chapter: A Review 

Things to Remember 

Exercises and Programming Problems

Chap. 2   Gaining Control

2.1 Expressions and Statements 

2.2 Blocks and Compound Statements

2.3 The if and if-else Statements

2.4 Relational Operators and Expressions

2.5 The while Loop 

2.6 Logical Operators and Expressions

2.7 The for Loop

2.8 Making C Readable-Programming Style

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems

Chap. 3   Basic Data Types

3.1 Introduction to Scalar Types in C

3.2 Integers and Different Integer Bases 

3.3 The Integer Types 

3.4 The size of() Operator

3.5 Character Variables 

3.6 Unsigned Types  

3.7 ANSI C and Integer Types 

3.8 If There's Time or Need: Bit Operations on the Integer Types 

3.9 Floating Point Types

3.10 Types of Expressions and Automatic Conversions 

3.11 Forced Type Conversions

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems 

Chap. 4  Arrays and Pointers

4.1 One Dimensional Arrays  

4.2 Initialization of Arrays

4.3 Arrays as Parameters to Functions

4.4 Getting Started with Pointers  

4.5 Pointer Arithmetic  

4.6 Dereferencing a Pointer Variable

4.7 An Array as a Pointer

4.8 Passing Parameters to Functions 

4.9 Searching and Sorting Arrays

4.10 Pointers and Dynamic Memory Allocation 

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems 

Chap. 5   Strings  

5.1 Introduction to Strings  

5.2 Variable Strings 

5.3 Input and Output of Strings 

5.4 The Common String Library Functions 

5.5 Examples with strlen() and strchr() 

5.6 More Functions in the C String Library

5.6 Two Versions of strcat() 

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems  

Chap. 6   Keeping Control

6.1 Introduction 

6.2 The do-while Statement 

6.3 The switch Statement

6.4 Altering the Flow of Control 

6.5 Getting Out Gracefully

6.6 If There's Time or Need: Using Recursion

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems

Chap. 7   Structuring the Data

7.1 Introduction to Structures

7.2 Operations on Structures

7.3 Using Structures with Arrays and Pointers

7.4 Bit Fields

7.5 Enumerated Types

7.6 Unions

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems

Chap. 8   Intra-program Communication

8.1 Introduction

8.2 Automatic versus Static Variables

8.3 Global versus Local Variables

8.4 Modules and External Variables

8.5 Typedefs

8.6 Function Definitions

8.7 Function Declarations and Calls

8.8 Pointers to Functions

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems

Chap. 9   Multidimensional Arrays and Double Indirection

9.1 Two-Dimensional Arrays

9.2 Storage Class and Scope of Multidimensional Arrays

9.3 Multidimensional Arrays as Parameters to Functions

9.4 Arrays with More Than Two Dimensions

9.5 Arrays of Pointers

9.6 Double Indirection

9.7 Command Line Parameters

Language Elements Introduced in This Chapter: A Review

Exercises and Programming Problems

Chap. 10   Input and Output

10.1 Review of Input and Output

10.2 An Introduction to Files in C

10.3 Character Input and Output

10.4 String Input and Output

10.5 Reading Blocks of Data at a Time

10.6 Formatted Input and Output

10.7 Random versus Sequential Access in Files 

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems 

Chap. 11   C Library and Preprocessor Facilities

11.1 Introduction to the C Library 

11.2 Error Handling with the ANSI C Library

11.3 Using Mathematical Functions

11.4 Character Manipulation 

11.5 Dynamic Allocation and De-allocation of Memory

11.6 A Linked List-The Theory and an Example 

11.7 Defining Macros

11.8 Conditional Compilation 

Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems 

Chap. 12   Discovering C++

12.1 Introduction 

12.2 Some Added Features

12.3 C++ and OOP - Data Abstraction and Encapsulation 

12.4 C++ and OOP - Polymorphism 

12.5 C++ and OOP - Inheritance 

12.6 More about I/O

12.7 Libraries 

C++ Language Elements Introduced in This Chapter: A Review

Things to Remember

Exercises and Programming Problems 

Part II    The Programmer's Handbook

A   Identifiers in ANSI C

B   Keywords in C

C   Declarations in C

Storage Class Specifiers  C-1

Type Qualifiers  C-1

Type Specifications . C-2

Initializers C-2

Reading C Declarations . C-3

D Operators and Expressions

 Operator Prescendence Chart

E  Control Statements in C

F  The Ansi C Library

For teachers

All the material you need to teach your courses.

Discover teaching material