Ship-Ship-Hooray! FREE 2-Day Air* on $25+ Excludes marketplace items >
Applications Programming in ANSI C

Applications Programming in ANSI C - 3rd edition

ISBN13: 978-0023611414

Cover of Applications Programming in ANSI C 3RD 96 (ISBN 978-0023611414)
ISBN13: 978-0023611414
ISBN10: 0023611413

Cover type: Paperback
Edition: 3RD 96
Copyright: 1996
Publisher: Prentice Hall, Inc.
Published: 1996
International: No

List price: $202.50

Applications Programming in ANSI C - 3RD 96 edition

ISBN13: 978-0023611414

Richard Johnsonbaugh

ISBN13: 978-0023611414
ISBN10: 0023611413

Cover type: Paperback
Edition: 3RD 96
Copyright: 1996
Publisher: Prentice Hall, Inc.
Published: 1996
International: No

Table of Contents

(NOTE: Each chapter ends with common programming errors and programming exercises)

0. Computer Systems and Program Development

Computer Systems.
Internal representations.
Programming Languages.
Program Development.
Why C?

1. Introduction to C

A First C Program.
Sample application: Conversion of lengths.
The while statement.
Sample Application: Computing Income Tax.
The if statement.
More on the if statement.
Redirecting input and output.

2. Variables, Operators, and Control Flow

Characters and integers.
Floating-point variables.
Arithmetic operations.
Relational and logical operators and the assignment operator.
Sample application: Statistical measures.
The for statement and the comma operator.
The operators plus and minor.
Sample application: Printing a bar graph.

3. More Operators and Control Flow

The break and continue statements.
Sample application: Generating prime numbers.
The switch statement.
The go to statement and labels.
Conditional expressions.
Sample application: Printing a calendar.
The cast operator.
The size of operator.
Getchar and putchar.
Bitwise operators.

4. Functions and Program Structure

Arguments and parameters.
Call by value.
Sample application: Computing Resistance.
The scope of variables.
The preprocessor.
Sample application: Simulating a dice game.
Sample application: Recursive tiling.
Functions with a arbitrary number of arguments.

5. Arrays

Why arrays?
Array indexes and cell offsets.
Sample application: Tracking and reporting car sales.
Character strings as arrays of characters.
Sample application: Formatting text with a given line length.
Arrays as function arguments.
String-handling functions.
Sample application: Computing a string's length.
Multidimensional arrays.
Sample application: Matrix multiplication.
Sample application: Sorting and searching.
Sample application: Forest fire percolation.

6. Pointers

Pointer variables.
Levels of indirection.
Pointers and arrays.
Pointers as arguments to functions.
Sample application: Reversing a string in place.
Sample application: Parallel computing.
Pointers and multidimensional arrays.
Command line arguments.
Pointers to functions.
Sample application: Comparing sorting algorithms.

7. Storage Classes and Type Qualifiers

Storage classes in a single-source file: auto, extern, static.
Sample application: Breaking text into pages.
The storage class register.
Storage classes in multiple-source files.
Sample application: An interactive calculator.
Nested blocks.
Storage classes for functions.
Type qualifiers: const and volatile.
Sample application: A scheduling problem.

8. Input and Output

Opening and closing files.
Character input/output.
Sample application: Determining a source file's size in bytes.
String input/output.
Formatted input/output.
Unformatted input/output.
Moving around in a file: fseek, ftell, rewind.
Sample application: A random access file.

9. Structures, Unions, and Enumerated Types

Introduction to structures.
Sample application: Pattern recognition.
The typedef construct.
Operations on structures.
Pointers to structures, nested structures, and self-referential structures.
Structures and functions.
Sample application: Sales reporting.
Unions and bit fields.
Enumerated types.

10. Introduction to Data Structures

Compile-time and run-time storage allocation.
Linked lists.
Sample application: A text editor.
Stacks and queues.
Sample application: Converting from infix to postfix.
Graphs and trees.
Tree traversals.
Breadth-first search and depth-first search.
Sample application: Heuristic graph search.

11. Advanced Topics

Exception-handling and jumps.
Graphics support for C.
Sample application: Fractals.
C and C plus.

Hints and Solutions to Odd-Numbered Exercises.