Course content

CS 112 is organized by week, with each week structured as follows:

The SLOs (Student Learning Objectives), labs, and projects for each week are given in the links below. The readings are from C++ for Python Programmers Book.

Week Topics Laboratories Projects Tests, Video Links, etc.
00

1/21
Intro to C++, compilation, Data Types (including pointers), const, binary and hexadecimal, arrays, using cout/cin.
Week’s page
Lab 0 Proj 0
01

1/27
Control Structures, Functions, Parameter Passing modes.
Week’s page
Lab 1 Proj 1
02

2/3
File Input/Output, Exception Handling, Two-dimensional Arrays.
Week’s page
Lab 2 Proj 2
03

2/10
Classes, Operator Overloading, etc.
Week’s page
Lab 3 Proj 3 Test 1: Weeks 0 - 2, Friday.
04

2/17
Vectors – Dynamic Arrays
Week’s page
Lab 4 Proj 4
05

2/24
Generic Containers
Week’s page
Lab 5 Proj 5
06

3/3
Linked Lists, Dynamic Array or Linked List
Week’s page
Lab 6 No project Test 2: Weeks 0 - 5, Friday
07

3/10
Spring Break
Week’s page
No lab No project
08

3/17
Algorithm Analysis and Big-Oh
Week’s page
Lab 8 Proj 8
09

3/24
Stacks and Queues
Advising days – no class 26-27
Week’s page
Lab 9 Proj 9
10

3/31
Recursion
Week’s page
Lab 10 Proj 10 Test 3: Weeks 0 - 8, Friday
11

4/7
BSTs
Week’s page
Lab 11 Proj 11
12

4/14
AVL Trees
Good Friday & Easter Monday – no class 18-21
Week’s page
No lab No project
13

4/22
STL set and map containers
Week’s page
Lab 13 No project Test 4: Weeks 0 - 11, Wednesday
14

4/28
Hash Tables, Sorting Algorithms
Week’s page
Lab 14
Final

May 3-8
Search calvin.edu for “Exam Schedule” to find the time of the exam (and all exams you have, this semester, and all future semesters). Test 5 Cumulative, during exam time (You may take it in either class’s exam time. Classes met at 11am MWF and 12:15 MWF.)