|

Addison-Wesley / Prentice Hall

Computer Science

My Instructor Resource Center :  Log in or request access

Starting out with C++ Brief, 5/E
Tony GaddisHaywood Community College
Barret Krupnow

ISBN-10: 0321412915
ISBN-13:  9780321412911

Publisher:  Addison-Wesley
Copyright:  2007
Format:  Paper; 700 pp
Published:  09/11/2006

Principal author of the ‘Starting Out’ programming series, Tony Gaddis, has a distinguished writing style like no other that is overwhelmingly popular with beginning programmers.  He motivates student learning with an accessible step-by-step way that is easy to follow and understand.

 

In the brief version of Starting Out with C++, Gaddis takes a problem-solving approach, inspiring students to understand the logic behind developing quality programs while introducing the C++ programming language. This style of teaching builds programming confidence and enhances each student’s development of programming skills.

 

This edition in the 'Starting Out' Series covers the core programming concepts that are introduced in the first semester introductory programming course. 

 

  • Covers the core programming concepts that are introduced in the first semester introductory programming course. 

 

  • Control structures, functions, arrays, and pointers are covered before objects.

 

  • The STL string class is used throughout.

 

  • Concise, practical examples place programming concepts into a real-world context, making them more tangible for students.

 

  • Clear code listings are easy for students to read and understand.

 

  • A wealth of exercises in each chapter offers students the chance to put the concepts they are learning to work. MyCodeMate enabled programming projects allow instructors to assign and track their students' programming projects online.

 

  • All programs are written to be ANSI/ISO compliant, comments add clarity to programs, and each chapter now has a set of 'Short Answer' questions, and 'Algorithm Workbench' problems.

 

  • All new copies come with a CD that includes Borland C++ Builder 6.0, Personal Edition, answers to all checkpoint questions, answers to all odd-numbered review questions and exercises, source code, additional case studies, complete with source code and a full set of appendices (including several tutorials) that accompany the book.

 

  • For sale lab manual includes pre-labs activities, lab assignments, and post lab activities.

 

  • Earlier and increased coverage of for loop with more added explanation of how to decide which loop to use.
  • Added material on using functions to divide and conquer a problem.
  • Increased discussion of pointers including pointers to const and constant pointers.
  • Expanded coverage on object-oriented problem solving.
  • Refined and increased coverage of inheritance, polymorphism, virtual functions, and recursion.
  • Enhanced pedagogy such as more programming exercises, additional pseudocode and mini-flowchart diagrams, and “line numbers” added to all programs.

Preface  

 

CHAPTER 1 Introduction to Computers and Programming

1.1 Why Program?

1.2 Computer Systems: Hardware and Software  

1.3 Programs and Programming Languages

1.4 What Is a Program Made of?

1.5 Input, Processing, and Output

1.6 The Programming Process

1.7 Procedural and Object-Oriented Programming  

 

CHAPTER 2 Introduction to C++

2.1 The Parts of a C++ Program

2.2 The cout Object  

2.3 The # include Directive  

2.4 Variables and Literals  

2.5 Identifiers  

2.6 Integer Data Types

2.7 The char Data Type  

2.8 Floating-Point Data Types  

2.9 The bool Data Type  

2.10 Determining the Size of a Data Type  

2.11 Variable Assignments and Initialization  

2.12 Scope  

2.13 Arithmetic Operators  

2.14 Comments  

2.15 Focus on Software Engineering: Programming Style  

2.16 If You Plan to Continue in Computer Science: Standard and Prestandard C++  

 

CHAPTER 3 Expressions and Interactivity  

3.1 The cin Object  

3.2 Mathematical Expressions  

3.3 When You Mix Apples and Oranges: Type Conversion  

3.4 Overflow and Underflow  

3.5 Type Casting  

3.6 Named Constants  

3.7 Multiple Assignment and Combined Assignment  

3.8 Formatting Output  

3.9 Formatted Input  

3.10 Focus on Object-Oriented Programming: More About Member Functions  

3.11 More Mathematical Library Functions  

3.12 Focus on Debugging: Hand Tracing a Program  

3.13 Focus on Problem Solving: A Case Study   

3.14 Introduction to File Input and Output  

 

CHAPTER 4 Making Decisions  

4.1 Relational Operators

4.2 The if Statement

4.3 Flags

4.4 Expanding the if Statement

4.5 The if/else Statement

4.6 The if/else if Statement

4.7 Using a Trailing else

4.8 Menus

4.9 Focus on Software Engineering: Nested if Statements

4.10 Logical Operators

4.11 Checking Numeric Ranges with Logical Operators

4.12 Focus on Software Engineering: Validating User Input

4.13 More About Variable Definitions and Scope

4.14 Comparing Strings

4.15 The Conditional Operator

4.16 The switch Statement

4.17 Testing for File Open Errors

 

CHAPTER 5 Looping

5.1 The Increment and Decrement Operators

5.2 Introduction to Loops: The while Loop

5.3 Using the while Loop for Input Validation

5.4 Counters

5.5 The do-while Loop

5.6 The for Loop

5.7 Keeping a Running Total

5.8 Sentinels  

5.9 Using a Loop to Read Data from a File  

5.10 Focus on Software Engineering: Deciding Which Loop to Use  

5.11 Nested Loops  

5.12 Breaking Out of a Loop  

5.13 The continue Statement  

 

CHAPTER 6 Functions

6.1 Focus on Software Engineering: Modular Programming  

6.2 Defining and Calling Functions  

6.3 Function Prototypes  

6.4 Sending Data into a Function  

6.5 Passing Data by Value  

6.6 Focus on Software Engineering: Using Functions in a Menu-Driven Program  

6.7 The return Statement  

6.8 Returning a Value from a Function  

6.9 Returning a Boolean Value  

6.10 Local and Global Variables  

6.11 Static Local Variables  

6.12 Default Arguments  

6.13 Using Reference Variables as Parameters  

6.14 Overloading Functions  

6.15 The exit () Function  

6.16 Stubs and Drivers  

 

CHAPTER 7 Arrays

7.1 Arrays Hold Multiple Values  

7.2 Accessing Array Elements  

7.3 No Bounds Checking in C++  

7.4 Array Initialization  

7.5 Processing Array Contents  

7.6 Focus on Software Engineering: Using Parallel Arrays  

7.7 Arrays as Function Arguments  

7.8 Two-Dimensional Arrays  

7.9 Arrays of Strings  

7.10 Arrays with Three or More Dimensions  

7.11 Focus on Problem Solving and Program Design: A Case Study  

7.12 If You Plan to Continue in Computer Science: Introduction to the STL vector  

 

CHAPTER 8 Pointers  

8.1 Getting the Address of a Variable  

8.2 Pointer Variables  

8.3 The Relationship Between Arrays and Pointers  

8.4 Pointer Arithmetic  

8.5 Initializing Pointers  

8.6 Comparing Pointers  

8.7 Pointers as Function Parameters  

8.8 Focus on Software Engineering: Dynamic Memory Allocation  

8.9 Focus on Software Engineering: Returning Pointers from Functions  

8.10 Focus on Problem Solving and Program Design: A Case Study  

 

CHAPTER 9 Characters, Strings, and the string Class  

9.1 Character Testing  

9.2 Character Case Conversion  

9.3 Review of the Internal Storage of C-Strings  

9.4 Library Functions for Working with C-Strings  

9.5 String/Numeric Conversion Functions  

9.6 Focus on Software Engineering: Writing Your Own

C-String-Handling Functions  

9.7 The C++ string Class  

9.8 Focus on Problem Solving and Program Design: A Case Study  

 

CHAPTER 10 Structured Data  

10.1 Abstract Data Types  

10.2 Focus on Software Engineering: Combining Data into Structures  

10.3 Accessing Structure Members  

10.4 Initializing a Structure  

10.5 Arrays of Structures  

10.6 Focus on Software Engineering: Nested Structures  

10.7 Structures as Function Arguments  

10.8 Returning a Structure from a Function  

10.9 Pointers to Structures  

10.10 Focus on Software Engineering: When to Use., When to Use ->, and When to Use *  

10.11 Unions  

10.12 Enumerated Data Types  

 

CHAPTER 11 Advanced File Operations  

11.1 File Operations  

11.2 File Output Formatting  

11.3 Passing File Stream Objects to Functions  

11.4 More Detailed Error Testing  

11.5 Member Functions for Reading and Writing Files  

11.6 Focus on Software Engineering: Working with Multiple Files  

11.7 Binary Files  

11.8 Creating Records with Structures  

11.9 Random-Access Files  

11.10 Opening a File for Both Input and Output  

 

CHAPTER 12 Introduction to Classes  

12.1 Procedural and Object-Oriented Programming  

12.2 Introduction to Classes  

12.3 Defining an Instance of a Class  

12.4 Why Have Private Members?  

12.5 Focus on Software Engineering: Separating Class Specification from Implementation  

12.6 Inline Member Functions  

12.7 Constructors  

12.8 Passing Arguments to Constructors  

12.9 Destructors  

12.10 Overloading Constructors  

12.11 Private Member Functions  

12.12 Arrays of Objects   

12.13 Focus on Problem Solving and Program Design: An OOP Case Study  

12.14 Focus on Object-Oriented Programming: Creating an Abstract Array Data Type  

12.15 Focus on Object-Oriented Design: The Unified Modeling Language (UML)  

12.16 Focus on Object-Oriented Design: Finding the Classes and Their Responsibilities  

 

CHAPTER 13 More About Classes  

13.1 Instance and Static Members  

13.2 Friends of Classes  

13.3 Memberwise Assignment  

13.4 Copy Constructors  

13.5 Operator Overloading  

13.6 Object Conversion  

13.7 Aggregation  

13.8 Focus on Object-Oriented Design: Class Collaborations  

 

CHAPTER 14 Inheritance, Polymorphism, and Virtual Functions  

14.1 What Is Inheritance?  

14.2 Protected Members and Class Access  

14.3 Constructors and Destructors in Base and Derived Classes  

14.4 Redefining Base Class Functions  

14.5 Class Hierarchies  

14.6 Polymorphism and Virtual Member Functions  

14.7 Abstract Base Classes and Pure Virtual Functions  

14.8 Multiple Inheritance  

 

Appendix A: The ASCII Character Set  

Appendix B: Operator Precedence and Associativity  

Index  

 

Student CD  The following chapters and appendices are on the accompanying Student CD.

 

CHAPTER B (Bonus Chapter): Searching and Sorting Arrays  

B-1 Focus on Software Engineering: Introduction to Search Algorithms  

B-2 Focus on Problem Solving and Program Design: A Case Study  

B-3 Focus on Software Engineering: Introduction to Sorting Algorithms  

B-4 Focus on Problem Solving and Program Design: A Case Study  

B-5 If You Plan to Continue in Computer Science: Sorting and Searching vectors  

 

Appendix C: Introduction to Flowcharting

Appendix D: Using UML in Class Design

Appendix E: Namespaces

Appendix F: Writing Managed C++ Code for the .NET Framework

Appendix G: Passing Command Line Arguments

Appendix H: Header File and Library Function Reference

Appendix I: Binary Numbers and Bitwise Operations

Appendix J: Multi-Source File Programs

Appendix K: Stream Member Functions for Formatting

Appendix L: Installing and Using Borland C++ Builder 6

Appendix M: Introduction to Microsoft Visual C++ 2005 Express Edition

Appendix N: Answers to Checkpoints

Appendix O: Answers to Odd-Numbered Review Questions

 

  • 9780136022534
    Starting Out with C++ Brief: From Control Structures through Objects, 6/E
    Gaddis
    ©2010 | Addison-Wesley | Paper Bound w/CD-ROM; 1008 pp | Instock
    ISBN-10: 0136022537 | ISBN-13: 9780136022534
    Brief Description

myCodeMate -- Your Own TA, Just a Click Away
This text is available with myCodeMate, a completely Web-based, textbook-specific homework and programming resource for your Introduction to Programming course.

Tony Gaddis teaches computer science courses at Haywood Community College in North Carolina. He has also taught C and C++ programming for several corporations and government agencies, including NASA's Kennedy Space Center. Tony is a highly acclaimed instructor who is a former North Carolina Community College "Teacher of the Year" and a recipient of the Teaching Excellence award from the National Institute for Staff and Organizational Development in 1997. He is the principal author of the ‘Starting Out’ Series that includes Java, C++, Visual Basic and C# programming titles.

 

MyCodemate Student Access Kit, 3/E
MyCodeMate
©2005 | Addison-Wesley | Access Code Card | Instock
ISBN-10: 0321356977 | ISBN-13: 9780321356970


MyCodeMate for Starting Out with C++ Brief, 5/E
Gaddis & Krupnow
©2007 | Addison-Wesley | Website | Instock
ISBN-10: 032147161X | ISBN-13: 9780321471611
Online purchase price: $40.00

MyCodeMate, 5/E
Gaddis
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321395964 | ISBN-13: 9780321395962
Online purchase price: $40.00
Availability: Now! | Student Access Type: Access Code Required
Request Content       Take a Tour


Instructor's Manual for Lab Manual, 5/E
DeFino & Bardzell
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321431154 | ISBN-13: 9780321431158
    View Downloadable Files

MyCodeMate, 5/E
Gaddis
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321395964 | ISBN-13: 9780321395962
Online purchase price: $40.00
Availability: Now! | Student Access Type: Access Code Required
Request Content       Take a Tour


MyCodeMate for Starting Out with C++ Brief, 5/E
Gaddis & Krupnow
©2007 | Addison-Wesley | Website | Instock
ISBN-10: 032147161X | ISBN-13: 9780321471611
Online purchase price: $40.00

Online Solutions for Starting Out with C++ Brief Version, 5/E
Gaddis & Krupnow
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321472950 | ISBN-13: 9780321472953
    View Downloadable Files

PowerPoint Slides for Starting Out with C++ Brief Version, 5/E
Gaddis & Krupnow
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321470257 | ISBN-13: 9780321470256
    View Downloadable Files

Source Code for Lab Manual, 5/E
DeFino & Bardzell
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321433599 | ISBN-13: 9780321433596
    View Downloadable Files

Source Code for Starting Out with C++ Brief Version, 5/E
Gaddis & Krupnow
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321476506 | ISBN-13: 9780321476500
    View Downloadable Files

Test Bank, 5/E
Gaddis
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321409566 | ISBN-13: 9780321409560
    View Downloadable Files

TestGen Test Bank, 5/E
Gaddis
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321411455 | ISBN-13: 9780321411457
    View Downloadable Files

CS Support-Student Support Material
Addison-Wesley
©2008 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321446852 | ISBN-13: 9780321446855


MyCodeMate, 5/E
Gaddis
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321395964 | ISBN-13: 9780321395962
Online purchase price: $40.00

MyCodeMate for Starting Out with C++ Brief, 5/E
Gaddis & Krupnow
©2007 | Addison-Wesley | Website | Instock
ISBN-10: 032147161X | ISBN-13: 9780321471611
Online purchase price: $40.00

MyCodemate Student Access Kit, 3/E
MyCodeMate
©2005 | Addison-Wesley | Access Code Card | Instock
ISBN-10: 0321356977 | ISBN-13: 9780321356970


Starting Out with C++ Lab Manual, 5/E
DeFino & Bardzell
©2007 | Addison-Wesley | Paper; 296 pp | Instock
ISBN-10: 0321433130 | ISBN-13: 9780321433138


MyCodemate Student Access Kit, 3/E
MyCodeMate
©2005 | Addison-Wesley | Access Code Card | Instock
ISBN-10: 0321356977 | ISBN-13: 9780321356970


MyCodeMate for Starting Out with C++ Brief, 5/E
Gaddis & Krupnow
©2007 | Addison-Wesley | Website | Instock
ISBN-10: 032147161X | ISBN-13: 9780321471611
Online purchase price: $40.00

MyCodeMate, 5/E
Gaddis
©2007 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321395964 | ISBN-13: 9780321395962
Online purchase price: $40.00
Availability: Now! | Student Access Type: Access Code Required
Request Content       Take a Tour


Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.