Cover image for C program design for engineers
Title:
C program design for engineers
Personal Author:
Publication Information:
Reading, MASS : Addison-Wesley Pub, 1995
ISBN:
9780201590647

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000003201898 QA76.73.C15 H39 1995 Open Access Book Book
Searching...
Searching...
30000004088286 QA76.73.C15 H39 1995 Open Access Book Book
Searching...
Searching...
30000004088294 QA76.73.C15 H39 1995 Open Access Book Book
Searching...
Searching...
30000004088302 QA76.73. C15 H39 1995 Open Access Book Book
Searching...

On Order

Summary

Summary

This text examines introductory programming concepts and theory from an engineering viewpoint. It prepares the reader step-by-step to tackle the challenging case studies and programming projects, and uses widely accepted software engineering methods to design program solutions as cohesive readable, reuseable modules. Current issues such as cellular telephone network development, space exploration and image enhancement are addressed, and implementations of basic numerical and statistical methods commonly used by engineers are introduced.


Author Notes

Jeri R. Hanly is a member of the computer science faculty at the University of Wyoming . She has developed software for target recognition in collaboration with naval researchers in China Lake, California and has taught software engineering seminars for professional developers of computing systems in the U.S. and Canada.

Elliot Koffman is a professor of computer and information science at Temple University. He is one of the country's foremost CS educators, a former chairman of the ACM Task Force for introductory programming methods courses, and author of a number of successful language texts in Modula-2, FORTRAN, in addition to his four editions of Pascal and Turbo Pascal.

Joan C. Horvath received a B.S. in aeronautics and astronautics from M.I.T. and her M.S. in mechanical, aerospace, and nuclear engineering from U.C.L.A. She has held positions at the Jet Propulsion Laboratory, California Institute of Technology, in flight project operations, software development and scheduling.



0201590646AB04062001


Table of Contents

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