Course Schedule
This schedule is tentative and subject to change. Keep in mind that the slides may not include all the material discussed in lecture. You are responsible for any material we present in lecture, even if it does not appear in the posted slides. Notice that code examples can be found in the grace cluster (public directory).

| Week | Topics | Slides | Examples | Work |
|---|---|---|---|---|
| cmsc106 Schedule | ||||
| Week #1 (Sep 2) |
Course Introduction, Introduction to Computer Programming, Unix Basics, Getting Started in C programming, Printing messages, Data Types and Declarations (Intro). |
01‑Intro.pdf 02‑CIntro.pdf |
02-CIntro-Code.zip | |
| Week #2 (Sep 9) |
Data Types and Declarations, Expressions, Operators, Assignments, Input | 03-Input.pdf | 03-Input-Code.zip |
P1 Out (Mon/Sep 8) |
| Week #3 (Sep 16) |
Formattted Output, Math Library, C's conditional statements | 04‑Conditionals.pdf | 04-Conditionals-Code.zip |
Q1 (Wed/Sep 17) |
| Week #4 (Sep 23) |
C's looping statements, Debugging/Testing I (Intro and Tools) | 05-Loops.pdf | 05-Loops-Code.zip |
P1 Due (Wed/Sep 24) P2 Out (Thu/Sep 25) |
| Week #5 (Sep 30) |
Design/Testing I, Functions (user--defined functions, parameters, local variables) |
06-Design.pdf 07-Functions.pdf |
07-Functions-Code.zip |
Q2 (Wed/Oct 1) |
| Week #6 (Oct 7) |
Functions (Cont.), Debugging/Testing II, Random Values, Global Variables, Separate Compilation | 08-Functions-II.pdf | 08‑Functions‑II‑Code.zip |
P2 Due (Thu/Oct 9) |
| Week #7 (Oct 14) |
Pointers/Memory Maps, Midterm I (Lecture) | 09‑Testing‑Pointers.pdf | 09‑Testing‑Pointers‑Code.zip |
P3 Out (Mon/Oct 13) Midterm I (Thu/Oct 16) |
| Week #8 (Oct 21) |
Pointers/Memory Maps (Cont.), One-dimensional Arrays | 10-Arrays.pdf | 10-Arrays-Code.zip |
Q3 (Wed/Oct 22) |
| Week #9 (Oct 28) |
One-dimensional Arrays (Cont.), Initializers, Array Parameters, Pointer Arithmetic, Design | 11-Arrays-Design.pdf | 11-Arrays-Design-Code.zip |
P3 Due (Thu/Oct 30) |
| Week #10 (Nov 4) |
Midterm II (Lecture), Memory Organization, Debugger (gdb), Array Examples | No slides. | No examples. |
Midterm II (Tue/Nov 4) P4 Out (Wed/Nov 5) |
| Week #11 (Nov 11) |
Strings, String Library Functions, typedef | 12-Strings.pdf | 12-Strings-Code.zip |
Q4 (Wed/Nov 12) |
| Week #12 (Nov 18) |
Structure Concepts, Command Line Arguments |
13-Structures.pdf 14‑StructuresII‑CmdLine.pdf |
13-Structures-Code.zip 14‑StructuresII‑CmdLine‑Code.zip |
P4 Due (Fri/Nov 21) |
| Week #13 (Nov 25) |
Midterm III (Lecture) |
Midterm III (Tue/Nov 25) P5 Out (Tue/Nov 25) Thanksgiving Recess (Thu 27- Fri 28) |
||
| Week #14 (Dec 2) |
Two-Dimensional arrays, File I/O | 15-2Dim-Arrays-FileIO.pdf |
15-2Dim-Arrays-FileIO-Code.zip |
Q5 (Wed/Dec 3) |
| Week #15 (Dec 9) |
Make Utility, Dynamic Memory Allocation, Course Evaluation |
16-DynMem.pdf 17-Make.pdf 18-Final-Review.pdf |
16-DynMem-Code.zip 17-Make-Code.zip |
P5 Due (Thu/Dec 11) Last Day of Classes (Fri/Dec 12) Final Exam (Tue/Dec 16 8am-10am) |