CS 160: Introduction to Procedural Programming /
ECE 160: Introduction to Programming for Electrical Engineers
Spring 2026
Tuesdays 10:00 AM - 10:50 AM, Rm. 104
Wednesdays 12:00 PM - 1:50 PM, Rm. 104
Instructor:
Carl Sable
Email: carl.sable@cooper.edu
Office: Room 614
These are not required, but if you want to own a textbook on C,
these may be good choices (they will be briefly discussed in class):
"The C Programming Language, 2nd Edition"
Brian W. Kernighan and Dennis M. Ritchie
"Computer Science: A Structured Programming Approach Using C, 3rd
Edition"
Behrouz A. Forouzan and Richard F. Gilberg
"Practical C Programming, 3rd Edition"
Steve Oualline
"C Programming: A Modern Approach, 2nd Edition"
K. N. King
- Quizzes (3 total): 10% each
- Final Exam: 20%
- Programming Assignments (5 total): 10% each
Information on programming assignments will be posted when they are
assigned.
- Program #1
Due before midnight the night of Tuesday, February 17
The schedule will be updated as the semester progresses.
Any dates which have not yet occurred should be considered tentative.
- Tuesday, January 20
Topic: Course Overview and Introduction to the C
Programming Language
(Slides)
Code examples:
hello.c,
hello3a.c,
hello3b.c,
helloWithComments.c
See the syllabus
as a single document
- Wednesday, January 21
Topic: Course Overview and Introduction to the C Programming
Language (continued)
Topic: Variables and Expressions
(Slides)
Code examples:
variable_int.c,
negative_int.c,
weird_result.c,
variable_char1.c,
variable_char2.c,
variable_char3.c,
special_char1.c,
special_char2.c,
float.c,
uninitialized.c,
modulus.c,
pi1.c,
pi2.c
- Tuesday, January 27
Topic: Variables and Expressions (continued)
- Wednesday, January 28
Topic: Selection Statements
(Slides)
Code examples:
if1.c,
if2.c,
if3.c,
if4.c,
if5.c,
if6.c,
if7.c,
if8.c,
if9.c,
if10.c,
silly_compound.c,
sqrt.c,
else1.c,
else2.c,
switch.c
- Tuesday, February 3
Topic: Loops
(Slides)
Code examples:
while1.c,
while2.c,
while3.c,
while4.c,
while5.c,
while6.c,
while_sumDigits.c,
while_displayBits.c,
do_while1.c,
for1.c,
for2.c,
nested1.c,
nested2.c,
nested3.c,
continue1.c,
- Wednesday, February 4
Topic: Loops (continued)
Program #1 assigned
- Tuesday, February 10
Quiz #1
- Wednesday, February 11
NO CLASS (official Friday schedule)
- Tuesday, February 17
NO CLASS (official Monday schedule)
- Wednesday, February 18
Topic: Standard Input and Output
(Slides)
Code examples:
printf1.c,
printf2.c,
scanf1.c,
scanf2.c,
scanf3.c,
scanf4.c,
inout.c,
count.c
Topic: Arrays
- Tuesday, February 24
Topic: Arrays (continued)
- Wednesday, February 25
Topic: Functions
Program #2 assigned
- Tuesday, March 3
Topic: Tic-Tac-Toe!
- Wednesday, March 4
Topic: Debugging
Topic: Pointers
- Tuesday, March 10
Quiz #2
- Wednesday, March 11
Topic: Pointers (continued)
Topic: Strings
Program #3 assigned
- Tuesday, March 17
NO CLASS (Spring Recess)
- Wednesday, March 18
NO CLASS (Spring Recess)
- Tuesday, March 24
Topic: Text Files
- Wednesday, March 25
Topic: Recursion
- Tuesday, March 31
Topic: Solving Mazes
- Wednesday, April 1
Structures
Program #4 assigned
- Tuesday, April 7
Topic: Linked Lists in C
- Wednesday, April 8
Topic: Linked Lists in C (continued)
- Tuesday, April 14
- Quiz #3
- Wednesday, April 15
Topic: Team Programming
Topic: Multiple Files and Makefiles
- Tuesday, April 21
Program #5 assigned
- Wednesday, April 22
Topic: Binary Search Trees in C
- Tuesday, April 28
Topic: Introduction to Sorting
- Wednesday, April 29
Topic: Introduction to Sorting (continued)
- Tuesday, May 5
Topic: The call stack
- Wednesday, May 6
Topic: Miscellaneous Subtopics
- Tuesday, May 12
Review for Final Exam
- Wednesday, May 13
Final Exam