C Program Design for Engineers / Edition 2

Paperback (Print)
Rent from BN.com
(Save 75%)
Est. Return Date: 07/28/2015
Buy New
Buy New from BN.com
Buy Used
Buy Used from BN.com
(Save 39%)
Item is in good condition but packaging may have signs of shelf wear/aging or torn packaging.
Condition: Used – Good details
Used and New from Other Sellers
Used and New from Other Sellers
from $12.95
Usually ships in 1-2 business days
(Save 90%)
Other sellers (Paperback)
  • All (18) from $12.95   
  • New (7) from $66.60   
  • Used (11) from $12.95   


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 areas, making the material relevant to what engineers will encounter in their careers; the authors introduce implementations of basic numerical and statistical methods commonly used by engineers. Another feature is the addition of a chapter entitled "On to C++" that prepares readers for a transition to object-oriented programming. The book focuses on many aspects of software engineering, establishing early the connection between good problem-solving skills and effective software development. A five-phase software development method is presented in Chapter 1 and applied in every subsequent case study throughout. The book presents material in an order that meets the needs of a beginning programmer, rather than by the structure of the C programming language. This approach makes it possible to present fundamental concepts using traditional high-level terminology--output parameter, array, array subscript, string--and makes it easier for readers without a prior assembly-language background to master the many facets of pointer usage. This book is designed to introduce C programming to engineers in a way that is relevant to their engineering practice.

Read More Show Less

Editorial Reviews

Hanly (University of Wyoming) and Koffman (Temple University) emphasize solving problems and applying software engineering methods to design program solutions as reusable modules. The second edition adds a section on heap-dynamic array allocation and a closing chapter on C++ which prepares students for a transition to object-oriented programming. Annotation c. Book News, Inc., Portland, OR (booknews.com)
Read More Show Less

Product Details

  • ISBN-13: 9780201708714
  • Publisher: Pearson
  • Publication date: 10/16/2000
  • Edition description: REV
  • Edition number: 2
  • Pages: 679
  • Product dimensions: 7.20 (w) x 8.90 (h) x 1.50 (d)

Table of Contents

(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.


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.


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.



Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)