powered by
Center for Curriculum and Transfer Articulation
C++: Level I
Course: CIS162AB

First Term: 2007 Fall
Lec + Lab   3 Credit(s)   4 Period(s)   3.7 Load  
Subject Type: Occupational
Load Formula: S


Description: Introduction to C++ programming including general concepts, program design, development, data types, operators, expressions, flow control, functions, classes, input and output operations, debugging, structured programming, and object-oriented programming



MCCCD Official Course Competencies
1. Explain the history of C++ and basic computer components. (I)
2. Describe the software development process. (I)
3. Use predefined data types to declare and manipulate variables and arrays. (III)
4. Use operators in arithmetic and Boolean expressions. (III)
5. Design and develop structured/modular programs using various flow control structures and functions. (IV, V)
6. Describe object-oriented concepts. (VI)
7. Design and develop programs using classes and object-oriented programming techniques. (VI)
8. Process keyboard input and console output. (VII)
9. Debug simple and complex programming errors. (VIII)
10. Use standard preprocessor commands. (IX)
MCCCD Official Course Competencies must be coordinated with the content outline so that each major point in the outline serves one or more competencies. MCCCD faculty retains authority in determining the pedagogical approach, methodology, content sequencing, and assessment metrics for student work. Please see individual course syllabi for additional information, including specific course requirements.
 
MCCCD Official Course Outline
I. General Concepts
   A. History of C++
   B. Comparisons to C
   C. Computer components
      1. CPU
      2. Primary and secondary storage
      3. Input/output devices
   D. Information processing cycle
   E. ANSI C++ in character based environments (DOS) vs graphical (WINDOWS)
II. Program Design and Development
   A. Problem definition
   B. Algorithm design
   C. Coding
   D. Testing
   E. Documentation
   F. Pseudocode
   G. Structure charts and flowcharts
   H. Compile using separate files
      1. Interface file
      2. Implementation file
      3. Application file
III. Data Manipulation
   A. Variables
      1. Data types
      2. Declaration and use
      3. Scope
      4. Type casting
      5. Data validation
      6. Pointers
   B. Constants
      1. Data types
      2. Declaration and use
   C. Arrays
      1. Declaration and use
      2. Simple sorting algorithm
      3. Simple searching algorithm
      4. Partially filled
      5. Single and multidimensional
      6. Passing in functions
   D. Character and String
      1. Character arrays
      2. String class
      3. Comparison operators and functions
      4. Assignment operators and functions
      5. Concatenation operators and functions
      6. Other library functions
   E. Operators, operands, and expressions
      1. Assignment
      2. Arithmetic
      3. Boolean
      4. Precedence of operators
   F. Namespaces
IV. Control Structure
   A. Sequence control
   B. Selection control (branching)
   C. Repetition control (loops)
   D. Case control (switch)
V. Functions
   A. Uses
   B. Prototype
   C. Definition
   D. Argument types
   E. Return types
   F. Scope
   G. Overloading names
   H. Modular and reusable code
VI. Object-Oriented Programming (OOP)
   A. Classes
   B. Encapsulation
   C. Abstract Data Type (ADT)
VII. Input/Output (I/O) Operations
   A. Keyboard and console I/O
   B. Character I/O
   C. Formatted I/O
VIII. Debugging
   A. Syntax errors
   B. Logic errors
   C. Run-time errors
   D. Debugging techniques
   E. Test data
IX. Preprocessor Commands
   A. Standard commands
      1. include
      2. using namespace
      3. #ifndef
      4. define
 
MCCCD Governing Board Approval Date: 4/23/2002

All information published is subject to change without notice. Every effort has been made to ensure the accuracy of information presented, but based on the dynamic nature of the curricular process, course and program information is subject to change in order to reflect the most current information available.