A Review of C
o Data Types
o Operators
o Control Flow Constructs - if
o Loops
o switch
o Derived Data Types
o Arrays
o Array vs. Pointer
o Arrays and Pointers
o Structures
o Header File for a Structure
o Use of Structures
o Structure References
o Structure Assignments
o Unions
o Bitfields
o Enumerations
Functions
o Function Fundamentals
o Function Prototypes
o Function Invocation and Definition
o Subprogram Examples
o Functions Returning a Value
o Return Value Considerations
o Recursive Functions
o Evaluation of Function Arguments
o Variable Number of Arguments
o Scope of Variables
o Storage Class Attributes
o Initialization
Pointers
o Common Pointer Constructions
o Pointer Arithmetic
o Binary Search
o Command Line Arguments
o The Environment Pointer
o Changing a Pointer through a Function Call
o Processing Arrays With Pointers
o Simulation Example
o Simulating Higher Dimensional Arrays
o Two Dimensional Arrays
o Complex Declarations
o Pointers to Functions
o Surrogate Sorting: A Pointer Application
o Sorting with Large Records
Designing Data Types: Structures
o Steps in Creating Data Types
o Rationale For a New Data Type
o The File fraction.h
o Operations on the Fraction Data Types
o Implementation of the Functions
o Example Program Using Fractions
o Applications with Fractions
o Set Notation Examples
o Creating the Set Type
o Set Representation Example
o Set Representation
o Set Function Implementations
o A Program Which Uses The Set Data Type
Data Structures
o Potential List Elements
o Lists - What Are They?
o Problems With a List as an Array
o Lists as Arrays
o Benefits of Linking Elements
o A List of Linked Elements
o Defining the List Data Type
o The List Data Type
o Implementations of List Functions
o A Simple Program With a List
o Other Types of Lists
o The Need for Other Kinds of Lists
o Ordered Lists
o The rand Function
o Circular Lists
o Circular List Code
o Circular Lists Principles
o Two Way Lists - Example
o Two Way Lists