CS 1044 Introduction to Programming in C++

Instructor for CS 1044 at Virginia Tech (Spring 2025) — introductory programming in C++.

Instructor: Zhongdong Liu

Term: Spring

Location: Virginia Tech, Blacksburg, VA

Course Overview

I was the Instructor for CS 1044 Introduction to Programming in C++ at Virginia Tech in Spring 2025 — a first programming course for students across the university. The course builds a foundation in programming through hands-on practice in C++, with a heavy emphasis on writing, testing, and debugging real code every week.

Role: Instructor (full responsibility for lectures, course design, assessments, and TA supervision)
Term: Spring 2025
Delivery: In person, Torgersen 1060 (Mon & Wed)
Teaching assistants supervised: 4

Topics Covered

  • Variables, data types, and console input/output
  • Arithmetic expressions and type conversion
  • Selection (if / switch) and Boolean logic
  • Loops and iteration
  • Functions, parameters, and scope
  • Arrays and basic data organization
  • File input/output

Tools & Resources

  • Textbook: Starting Out with C++, Tony Gaddis (Pearson Revel), with built-in checkpoints, quizzes, and videos.
  • Compiler/IDE: Code::Blocks.
  • Automated grading: Web-CAT — students submit unlimited times, but output must match the expected output exactly.
  • Discussion: Piazza.

Assessment

Component Weight
Programming homework (individual) 30%
In-class programming exercises 30%
Midterm exams (2 × 10%) 20%
Final exam 20%

Exams were open-book and open-notes, but closed-internet and closed-compiler. Late work followed a graduated penalty (in-class exercises −5%/hour; homework −20%/day up to three days).