CIS 162 - C++
Course Department: Mathematics
Last Date of Approval: Spring 2021
Total Lecture Hours: 45
Total Lab Hours: 30
Total Clinical Hours: 0
Total Work-Based Experience Hours: 0
This is an introductory course in C++ which emphasizes the design and development of structured programs. All standard C++ topics are considered including input/output functions, logical constructs of sequence, selection and repetition, user-defined functions, parameter passing by value and by reference, and the use of simple variables, arrays and structures. This course is one of the required courses in the Computer Programming Languages Certificate Program. The course will help students prepare for a career in computer programming and information services. The course will require students to persevere through challenging problems and manage time to meet deadlines which are both important to everyday life. Three hours lecture, two hours lab.
Prerequisites/Corequisites: MAT 120 - College Algebra / MAT 127 - College Algebra and Trigonometry or equivalent
Mode(s) of Instruction: face-to-face and/or virtual
Credit for Prior Learning: There are no Credit for Prior Learning opportunities for this course.
Course Fees: None
Common Course Assessment(s): None
Student Learning Outcomes and Objectives:
Outcome 1: Describe the basic components of a computer and the software that controls them.
Task 1: Distinguish between internal and external memory.
Task 2: Identify input and output devices.
Task 3: Describe the five stages of the software development method (Problem, Analysis, Design, Implementation and Testing).
Task 4: Describe the role of each version of a program (source, object and executable) and how they are formed.
Outcome 2: Use C++ statements to store, retrieve, and manipulate data.
Task 1: Write comments to document program statements in C++.
Task 2: Write preprocessor directives.
Task 3: Identify examples of the standard data types in C++ (int, double and char).
Task 4: Distinguish between valid and invalid variables.
Task 5: Declare variables for each of the standard data types.
Task 6: Write assignment statements to satisfy given conditions.
Task 7: Find the values of arithmetic expressions and the resulting values assigned to variables.
Task 8: Write statements that will input data from the keyboard using C++.
Task 9: Determine the values received for variables from an input statement.
Task 10: Determine the output produced by C++ statements.
Task 11: Write C++ statements to produce output on a computer monitor.
Task 12: Write C++ statements to produce output to a data file.
Task 13: Write a complete program that involves the input of raw data from the keyboard, processing of the data and output of the results.
Outcome 3: Apply control statements and functions to solve programming problems.
Task 1: Identify the three fundamental control structures that are the basis of structured programming.
Task 2: Draw a structure chart to show how a problem can be divided into sub-problems.
Task 3: Write a main function that calls other parameterless functions to print figures or instructions.
Task 4: Describe the meaning of a prototype for a function that has no parameters.
Task 5: Determine which type of parameter or variable should be used in a specific function.
Task 6: Trace the execution of a function and distinguish between input and output parameters.
Task 7: Write function prototypes for a given set of conditions.
Task 8: Write statements that call functions.
Task 9: Write functions that satisfy given conditions.
Task 10: Find the value of logical expressions containing relational and equality operators.
Task 11: Write simple selection statements to perform specific tasks.
Task 12: Write selection statements that contain compound actions.
Task 13: Write multiple-alternative structures using nested if statements.
Task 14: Write multiple-alternative structures using switch statements.
Task 15: Write an assignment statement using a conditional operator.
Task 16: Correct selection statements that contain errors.
Task 17: Evaluate expressions involving logical operators.
Task 18: Evaluate expressions involving char and int values.
Task 19: Identify the three critical steps for controlling a loop that must be performed for every while or for loop.
Task 20: Use ordinary assignment statements to provide for counting or accumulating.
Task 21: Use the increment/decrement operators for counters and compound assignment operators for accumulators.
Task 22: Determine what a counter-controlled loop will accomplish.
Task 23: Write programs that use counter-controlled loops.
Task 24: Write programs that use sentinel-controlled loops.
Task 25: Write programs that use end-of-file-controlled loops.
Task 26: Write programs that contain nested loops.
Task 27: Determine which type of loop to use for a given set of conditions.
Task 28: Use a do-while loop to validate input data.
Task 29: Use a do-while loop to construct a query-controlled loop.
Outcome 4: Use arrays to handle large amounts of homogeneous data.
Task 1: Write declarations for arrays.
Task 2: Write routines to load arrays with data.
Task 3: Write routines to print the contents of arrays.
Task 4: Use the proper notation for arrays when using them as parameters of functions.
Task 5: Write routines to perform operations within an array.
Task 6: Write routines to perform operations between arrays.
Task 7: Write routines to search an array for elements that satisfy specific conditions.
Task 8: Write routines to find the location of the smallest or largest value in an array.
Task 9: Write routines to process data in a two-dimensional array.
Task 10: Use string functions in C++ statements.
Outcome 5: Use C++ structures to handle large amounts of heterogeneous data.
Task 1: Write declarations for simple structure variables.
Task 2: Write routines to load structures with values from a file.
Task 3: Write routines to print the contents of records.
Task 4: Write declarations for any combination of hierarchical structures and arrays.
Task 5: Write expressions or statements to access information in any combination of hierarchical records and arrays.
Add to Pathway (opens a new window)