Skip to content

lucianocheng/c-programming

Repository files navigation

c-programming

Course materials from Penn Engineering ESE116, 2007-2009

This repository contains the notes, lectures, and exercises used by Luciano Cheng for the C programming course at Penn from 2007 to 2009.

Lectures

  1. Getting Started
  2. C Compared to Java
  3. Number Representations
  4. Intro To Memory
  5. Intro To Arrays
  6. Malloc And Free
  7. C Preprocessor
  8. Pointers
  9. Strings
  10. Structs
  11. Struct Pointers
  12. Bitwise operators

Quix Study Notes

Each quiz had a "study guide" webpage that covered most of the material.

  1. Quiz 1 Review: Unix basics
  2. Quiz 2 Review: C functions, types, stack, and compilers
  3. Quiz 3 Review: C pointers, arrays, strings
  4. Quiz 4 Review: C structs, bitwise operators

Homeworks

Homeworks include provided code, solution, and programmatic tester template.

  1. HW 1: Hal, the calculator
  2. HW 2: Skynet
  3. HW 3v1: Packet Routing
  4. HW 3v2: Strings
  5. HW 4: Pointers
  6. HW 5: Tokenizer
  7. HW 6: Weather DB
  8. HW 7: Malloc

Labs

Labs include provided code and solution.

  1. Lab 0: Example C Program
  2. Lab 1, Intro to C
  3. Lab 2: Pointers
  4. Lab 3: Lego Mindstorms

C Tester

The C Tester is a program used to test C homework solutions. It compiles the homework assignment, creates a fork, then monitors the fork's output.

TODO

  • Convert the Flash Pointers SWF to a GIF or a more portable format
  • Break out C tester into it's own repository.
  • Fix links in the lab / homework descriptions
  • Find strings.c for Lab 1 String Exercise
  • Find instructions for the Weather Database assignment (Part 2)
  • Link to homework solutions in github.

About

Documents and projects from my C Programming Course at Penn

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published