C Program Design for Engineers, 2nd edition

Published by Pearson (November 27, 2000) © 2001

  • Jeri R. Hanly Loyola College in Maryland
  • Elliot B. Koffman Temple University
$154.66

  • Hardcover, paperback or looseleaf edition
  • Affordable rental option for select titles
  • Free shipping on looseleafs and traditional textbooks

This book presents introductory programming and software development concepts to engineers using a disciplined approach. It provides numerous case studies and programming projects based on real-world examples from a wide range of engineering disciplines, making the material relevant to what students will encounter in their careers. The authors introduce implementations of basic numerical and statistical methods commonly used by engineers. The book focuses on many aspects of software engineering, establishing early the connection between good problem-solving skills and effective software development. The five-phase software development method is presented in Chapter 1 and applied in every subsequent Case Study throughout.

C Program Design for Engineers presents material in an order that meets the needs of a beginning programmer, rather than by the structure of the C programming language. For example, the coverage of pointers is simplified by discussing them over several chapters, thus allowing the student to absorb the intricacies of pointer usage a little at a time. This approach makes it possible to present fundamental concepts using traditional high-level terminology—outputparameter, array, array subscript, string—and makes it easier for students without prior assembly-language background to master the many facets of pointer usage.

  • NEW - <F75BS>NEW! Contains a chapter "On to C++" to prepare students for a transition to object-oriented programming. Pg.___
  • NEW - <F75BS>NEW! Refined presentation of pointers introduces this difficult concept gradually over six chapters. Pg.___
  • NEW - <F75BS>NEW! Includes Margin Definitions throughout the book to call attention to important topics. Pg.___
  • NEW - <F75BS>NEW! Revised number of examples and problems from all engineering disciplines. Pg.___
  • NEW - <F75BS>NEW! Provides an expanded appendix covering the C library. Pg.___
  • Introduces implementations of basic numerical and statistical methods commonly used by engineers. Pg.___
  • Uses a proven pedagogy with End-of-Section Exercises, End-of-Chapter Exercises and Projects, Examples and Case Studies, Syntax Display Boxes, Program Style Displays, Error Discussions, and Chapter Reviews. Pg.___
(Each Chapter concludes with "Common Programming Errors" and a "Chapter Review.")

1. Overview of Computers and Software.

Computer Components.

Computer Software.

Computing for Engineers.

The Software Development Method.

Applying the Software Development Method.

Case Study: Converting Miles to Kilometers.



2. Overview of C.

C Language Elements.

Variable Declarations and Data Types.

Executable Statements.

General Form of a C Programs.

Case Study: Finding the Area and Circumference of a Circle.

Formatting Numbers in Program Output.

Interactive Mode, Batch Mode, and Data Files.



3. Data Types, Operators, and Simple Functions.

Representation of Data Types.

Arithmetic Expressions.

Extending a Problem Solution.

Case Study: Quality Control in Manufacturing Flat Washers.

Functions Implementing Additional Operators.

Simple User-Defined Functions



4. Selection Structures: if and switch Statements.

Control Structures.

Conditions.

The if Statement.

if Statements with Compound Statements.

Nested if Statements and Multiple-Alternative Decisions.

Decision Steps in Algorithms.

Case Study: Computing Compass Bearings.

The switch Statement.



5. Repetition and Loop Statements.

Repetition in Programs: Using Loops to Solve Problems.

Counting Loops and the while Statement.

Computing a Sum or a Product in a Loop.

The for Statement.

Conditional Loops.

Loop Design.

Nested Control Structures.

The do-while Statement and Flag-Controlled Loops.

Problem Solving Illustrated.

Case Study: Computing Radiation Levels.

How to Debug and Test Programs.



6. Modular Programming.

Functions with Input Arguments.

Problem Solving with Top-Down Design.

Case Study: Finding Prime Numbers.

Functions Output Parameters Implemented with Pointers.

Introduction to Scope of Names.

Formal Output Parameters as Actual Arguments.

Recursive Functions.

Case Study: Bisection Method for Finding Roots.

Top-Down Design Illustrated.

Case Study: Performing Arithmetic Operations on Common Fractions.

Debugging and Testing a Program System.



7. Arrays.

Declaring and Referencing Arrays.

Array Subscripts.

Using for Loops for Sequential Access.

Using Array Elements as Function Arguments.

Array Arguments.

Using Character Arrays as Strings.

Array Processing Illustrated.

Case Study: Finding Palindromes in Nucleotide Sequences.

Dynamic Allocation of Arrays.



8. Multidimensional Arrays.

Declaring and Referencing Multidimensional Arrays.

Modeling with Two-Dimensional Arrays.

Case Study: Cellular Telephone System.

Vectors and Matrices.

Solving Systems of Linear Equations.



9. Structure Types.

User-Defined Structure Types.

Structure Type Data as Input and Output Parameters.

Functions Whose Result Values Are Structured.

Problem Solving with Structure Types.

Case Study: A User-Defined Type for Complex Numbers.

Parallel Arrays and Arrays of Structures.

Case Study: Universal Measurement Conversion.



10. Text and Binary File Processing.

Input/Output Files: Review and Further Study.

Binary Files.

Searching a Database.

Case Study: Metals Database Inquiry.



11. Programming in the Large.

Using Abstraction to Manage Complexity.

Personal Libraries: Header Files.

Personal Libraries: Implementation Files.

Storage Classes.

Modifying Functions for Inclusion in a Library.

Conditional Compilation.

Arguments to Function main.

Defining Macros with Parameters.



12. Introduction to Numerical Methods.

Finding Roots of Equations.

Fundamental Statistics.

Numerical Differentiation.

Numerical Integration.

Solving First-Order Differential Equations.

Commercial Numerical Methods Software.



13. On To C++.

C++ Control Structures, Input/Output, and Functions.

C++ Support for Object-Oriented Programming.



Appendixes.

A. Character Sets

B. ANSI C Standard Libraries.

C. C Operators.

D. C Numeric Types.

E. Enumerated Types.

F. Pointer Arithmetic.

G. Dynamic Allocation of Two-Dimensional Arrays.

H. ANSI C Reserved Words.



Answers.


Index.

Need help? Get in touch

Video
Play
Privacy and cookies
By watching, you agree Pearson can share your viewership data for marketing and analytics for one year, revocable by deleting your cookies.

Pearson eTextbook: What’s on the inside just might surprise you

They say you can’t judge a book by its cover. It’s the same with your students. Meet each one right where they are with an engaging, interactive, personalized learning experience that goes beyond the textbook to fit any schedule, any budget, and any lifestyle.Â