Mar 04, 2026  
GRCC Curriculum Database (2025-2026 Academic Year) 
    
GRCC Curriculum Database (2025-2026 Academic Year)
Add to Catalog (opens a new window)

CIS 127 - C++ Programming I


Description
This course reviews programming basics such as variables, repetition statements, decision statements, arrays and the creation of basic classes. Students learn how to write programs that use functions to transfer data by value or by reference using pointers; implement classes that use header and implementation files, and; write classes that use containers and iterators. Students receive a good foundation in object oriented programming concepts. This language is portable and particularly suited for applications programming.
Credit Hours: 3
Contact Hours: 3
Prerequisites/Other Requirements: CIS 116   (C or Higher) AND [C or Higher in MA 107 OR MA 108 OR MA 110 OR MA 127 OR MA 129 OR MA 131 OR MA 133 OR MA 134 OR MA 245 OR MA 250 OR MA 255 OR MA 257 OR MA 259] OR ALEKS Score of 30 or Higher
English Prerequisite(s): None
Math Prerequisite(s): None
Course Corequisite(s): None
Academic Program Prerequisite: None
Consent to Enroll in Course: No Department Consent Required
Dual Enrollment Allowed?: Yes
Number of Times Course can be taken for credit:
Programs Where This Course is a Requirement:
Computer Programming, A.A.A.S.
General Education Requirement:
None
General Education Learner Outcomes (GELO):
NA
Course Learning Outcomes:
  1. Describe the various parts of a function, function prototype, function implementation and function call.

  2. Compare and contrast the difference between pass by value and pass by reference.

  3. Design a process for writing C++ classes and implement objects of the class.

  4. Construct classes that use selection and repetition.

  5. Construct classes that read from a file and write to a file.

  6. Create classes that use containers to store different object types.

  7. Use iterators to search through class vectors to locate objects.

  8. Create pointers, compare different pointer types, and assess pointer information.

  9. Design classes that are derived from a superclass. 

  10. Create and/or organize data and information into meaningful patterns in order to interpret and draw inferences from it. (CT3)

  11. Use creativity and alternative thinking to brainstorm new ideas and possilbe solutions to problems or issues. (CT8) 


Course Outline:
I. Introducing C++, Analysis and Design

II. Variables and Assignment

III. Branches

IV. Loops

V. Vectors

VI.  Functions

VII. Objects and Classes Part 1  

VIII. Objects and Classes Part 2

IX. Pointers

X. Inheritance

XI.  Exception Handling

XII. Input and Output


Approved for Online and Hybrid Delivery?:
Yes
Instructional Strategies:
Lecture: 30-60%



Facilitated discussion: 0-20%



Group work: 0-10%



Lab work: 10-40%
Mandatory Course Components:
None
Equivalent Courses:
None
Name of Industry Recognize Credentials: None

Course prepares students to seek the following external certification:
No
Course-Specific Placement Test: None
Course Aligned with ARW/IRW Pairing: IRW 98, IRW 99
Mandatory Department Assessment Measures:
None
Course Type:
Program Requirement- Offering designed to meet the learning needs of students in a specific GRCC program.
Course Format:
Lecture - 1:1
Total Lecture Hours Per Week: 3
People Soft Course ID Number: 100138
Course CIP Code: 11.9999
Maximum Course Enrollment: 24
High School Articulation Agreements exist?: Yes
If yes, with which high schools?: Coopersville High School
School: School of STEM
Department: Computer Information Systems
Discipline: CIS
Faculty Credential Requirements:
Master’s Degree (GRCC general requirement), Professionally qualified through work experience in field (Perkins Act or Other) (list below), Other (list below)
Faculty Credential Requirement Details:
The instructor must possess knowledge of the current technological environment, 4000 hours of programming experience, knowledge of the C++ programming environment, a good background in object oriented programing, and, above all, and be able to clearly explain all topics covered in the course so that the student will be able to understand the concepts taught.
Last Revision Date Effective: 2017-04-11 09:07:07
Course Review & Revision Year: 2025-2026
Essential Abilities/Technical Standards:
None



Add to Catalog (opens a new window)