Programming Language: C++


CS 320


Instructor: Prof. Judy Hansen-Childers

Office: Room 209

Office Hours:

Mondays: 1 PM to 3 PM

Wednesday: 12 PM to 2 PM

Friday: 12 PM to 1 PM

You are welcome to drop by at other times or make an appointment !

Office Phone: 859-1335

Home Phone: 582-7632


Snow Phone/Cancellation Line: 859-1140

Class Schedule: Tuesdays and Thursdays - From 10:50 AM to 12:05 in Room 122.



Computing Fundamentals With C++ by Rick Mercer (Franklin, Beedle & Associates)


Required Materials:



COURSE DESCRIPTION: Prerequisite: CS 118 and Sophomore standing

This course introduces the student to the concepts, theory, practice, and program design issues of the object-oriented C++ programming language. Students will learn to read, analyze, write, and debug programs. Concepts are reinforced through lecture as well as written and hands-on programming assignments. Topics addressed include: program analysis and design, basic algorithms, data structures, control structures, functions, classes, inheritance, pointers and file streams.

COURSE OBJECTIVES (Learning Outcomes):

By the end of the course, the student should:

  1. Understand the essential syntax, concepts and theory of the C++ language.
  2. Be able to correctly apply the syntax and concepts presented in class in his/her programs.
  3. Be able to design and successfully implement programmer-defined functions and classes.
  4. Be able to design, write, edit, link, debug, and compile basic C++ applications using the Microsoft Visual C++ IDE.




The student’s attainment of the learning outcomes will be assessed in the following ways:


Objective #1:  The student’s understanding of the essential syntax, concepts, and theory of the C++ language will be measured through class attendance and participation, and the student’s understanding of the reading assignments as indicated through his/her written assignments.


Objectives #2 - 4:  The student’s correct application of the C++ syntax and concepts, the design and implementation of programmer-defined functions and classes, and the ability to create C++ applications using Microsoft Visual C++ will be assessed by the ratio of assigned programming projects to successfully completed programming projects.




IMPORTANT!! Students are expected to read the material in the text and to complete programming projects OUTSIDE OF CLASS.

Each week students will have reading assignments from the text, written exercises and programming projects. As the best way to learn a programming language is to write code, you will be writing a lot of programs (somewhere around 30). Thus, it is important that you keep up with your reading and program writing!

IF YOU ARE HAVING PROBLEMS WITH A CONCEPT OR A PROGRAM PLEASE SEE ME ASAP!!  (However, I will expect that you have made a good faith effort to attend class and read the assigned material)  J



A (94 - 100) A- (90 - 93) B+ (87 - 89) B (83 - 86) B- (80 - 82)

C+ (77 - 79) C (73 - 76) C- (70 - 72) D+ (67 - 69) D (63 - 66)

D- (60 - 62) F (below 60)



Assigned Programs………………………………………….. 80%

Attendance and Participation...................................................20%



Students are expected to attend all class sessions and to be prepared to discuss the assigned readings and written homework. If a student must miss a class session, it is the student’s responsibility to arrange other ways of obtaining the information covered in class. Please notify the instructor in advance if you have to miss a class. Students with excessive absences may not receive a passing grade.



Students who plagiarize papers and projects or cheat on exams will receive zeros for the work in question and may fail the course.



·        Changes in the syllabus and assignments may be modified as deemed appropriate by the instructor.  All changes will be announced in class.

·        Students with a disability who are requesting academic accommodations should contact Ellen McQuiston at the Center for Academic Support (CAS) and the instructor as soon as possible.


Important Links


About C++

 C++ Archive


Here is a good C++ overview link: 


This great site has tutorials and a lot of other helpful information:



Thomas College Homepage





Week of January 12th

Introduction to Programming;

Introduction to the C++ Programming Language

Program Analysis and Design; Algorithms

(Chapter 1)



Week of January 19th

C++ Programming Basics

(Chapter 2)

(Assignments: 2D, 2E, 2G, 2H) (Extra Credit   - OPTIONAL: 2I)



Week of January 26th


(Chapter 3)

(Assignments: 3A, 3B, 3C, 3E) (Extra Credit   - OPTIONAL: 3H)














Week of February 2nd

Functions (continued)

 (Chapter 4)

(Assignments: 4A, 4B, 4C, 4D) (Extra Credit   - OPTIONAL: 4I and 4J)



Week of February 9th

Functions (continued)

(Chapter 5)

(Assignments: 5C, 5F, 5H, 5I, 5J, ) (Extra Credit   - OPTIONAL: 5L, 5G, 5l, 5M)  


Winter Break – February 17 - 23

Week of February 23rd


(Chapter 7)

(Assignments: 7B, 7I, 7J) (Extra Credit   - OPTIONAL: 7C and 7L)



Week of March 1st

Selection (continued)

(Chapter 7)



Week of March 8th


(Chapter 8)

(Assignments: 8A, 8D, 8E, 8I) (Extra Credit   - OPTIONAL: 8B, 8F and 8J)



Week of March 15th

Objects and Classes

(Chapter 6)

(Assignments: 6C, 6D, 6E) (Extra Credit   - OPTIONAL: 6F and 6G)



Week of March 22nd

Objects and Classes

(Chapter 6)



Week of April 5th

File Streams

(Chapter 9)

(Assignments: 9A, 9B, 9C)


Spring Break – March 31 – April 6

Week of April 12th


(Chapter 10)

(Assignments: 10A, 10B, 10D, 10H) (Extra Credit   - OPTIONAL: 10E, 10F, and 10G)



Week of April 19th


(Chapter 10)



Week of April 26th




Week of May 3

Finals Week – Wrap-up Programming Projects




Return to Thomas College home page.

This syllabus may be changed at the discretion of the instructor.

Last Revised: January 6, 2004