- Setting Up VSCode
- Simple Printing (
printf()
,scanf()
) - Inputs and Outputs
- Data Types (int, short, signed, unsigned, float, char, string?)
- Compilation Basics
- Using the command line in VSCode
- Control Flow (
if
statements,for
&while
loops)
Fall 2025 | Weds 6:10–8:40 PM ET | SEH 4040
Instructor:
Dr. Shiza Ali,
Office Hours: Monday 11am-12pm ET (by appointment)
From your very first “Hello, World!” to writing networked C programs, this course will teach you how to design, compile, debug and link multi-file applications in C, manage memory by hand, and understand the operating-system abstractions that lie beneath. You’ll also apply your skills to real-world shells and simple client/server networking.
printf/scanf/gets
and string handlingif
, for
, while
fork
, wait
)Week | Date | Topic | Links | To Do |
---|---|---|---|---|
1 | Aug 27 |
C Programming Basics
|
Slides Week 1
Visual Studio |
|
2 | Sep 3 |
Functions and Structs
|
Slides Week 2 |
|
3 | Sep 10 |
Pointers and Strings
|
|
|
4 | Sep 17 |
Pointer Arithmetic
|
|
|
5 | Sep 24 |
Memory Management 1
|
|
|
6 | Oct 01 |
Memory Management 2
|
Slides Week 6 |
|
7 | Oct 08 |
Midterm + Homework 2
|
Midterm |
|
8 | Oct 15 |
Operating Systems and Shells 1
|
Slides Week 8 |
|
9 | Oct. 22 |
Operating Systems and Shells 2
|
Slides Week 9 |
PATH ) |
10 | Oct. 29 |
Programs: Compilation, Linking, Execution
|
Slides Week 10 |
|
11 | Nov. 05 |
Program and System Calls
|
Slides Week 11 |
gcc stages and demonstrate gcc -S and gcc -c
|
12 | Nov. 12 |
Computer Organization: I/O & Files
|
Slides Week 12 |
|
13 | Nov. 19 |
Computer Organization: Networks & Remote Communication
|
Slides Week 13 |
|
14 | Nov. 26 | Thanksgiving Break. No Class. |
No class – enjoy the break! | |
15 | Dec. 03 |
IPC: Processes & Threads
|
Slides Week 15 |
|
16 | Dec. 10 |
Review
|
|
|
17 |
Finals!!!
|
Final Exam |
Student Responsibilities:
Submission/due dates appear with each homework description.
This class has a strict late policy for two reasons:
Only valid excuses are serious medical or family emergencies (or pre-approved athletic commitments).
git add
or git push
Unexcused late work receives 0 credit. Homework is bi-weekly, so do not fall behind.
Follow the style guidelines in the lecture notes (and see “Composite Style” for full details). Quality code is more than “working” code.
You may discuss concepts and approaches with peers, but each student must write solutions independently and list collaborators by name. Unauthorized sharing or copying is a violation. We run code-similarity tools against both current and past submissions—any confirmed cheating is reported.
The use of ChatGPT, GitHub Copilot, or any code-generation tool is strictly forbidden. Violations are treated as academic misconduct.
GWU takes integrity very seriously. Violations (plagiarism, unauthorized collaboration, falsification, etc.) can lead to assignment failure, course failure, or expulsion, with a permanent record. See the GWU Code of Student Conduct and “Guide to Academic Integrity in Online Learning.” If in doubt—ask before you act.
Contact Academic Integrity Office: rights@gwu.edu | 202-994-6757
If you miss a class, you remain responsible for its material. Use lectures, scribe notes, office hours, and classmates to catch up.
You have one week after a grade is released to request a correction—and you must provide a clear rationale (e.g., test-case errors).
Materials and recorded sessions are for private, course-related use only. Sharing without permission violates the Student Code of Conduct.
See the University’s COVID-19 Safety & Success site for updates. Face coverings are required indoors—cloth or medical-grade masks. Exemptions require prior approval.
Accommodations are arranged through Disability Support Services (DSS). Contact DSS at 202-994-8250 or disabilitysupport.gwu.edu.
We expect anti-racist, anti-sexist, accessible, and LGBTQ+-inclusive behavior. If you cannot meet these standards, please talk with the instructor or consider dropping the class.
Notify the instructor in the first week of any religious observance absences. See the University policy on “Religious Holidays” for details.
If you face difficulties, contact an instructor or advisor. Counseling: 202-994-5300 | Suicide Hotline: 1-800-273-8255