Home
  • Info
    • Requirements
    • Login to the portal
    • Schedule of classes & tests
    • Homework
    • Recommended IDE
    • Recommended reading
    • Midterm 1 samples and solutions
    • Midterm 2 sample
  • Classes
    • Lectures
    • Laboratories
      • week 1: Operating systems, IDE
      • week 2: Simple programs
      • week 3: Loops
      • week 4: Functions
      • week 5: Arrays
      • week 6: Structures
      • week 7: Pointers
      • week 8: Simple string manipulation
      • week 9: Dynamic strings
      • week 10: Recursion
      • week 12: Linked lists
      • week 13: Binary trees
      • week 14: Firework
    • Classroom practices
      • week 1: Algorithms, data, expressions
      • week 2: Basic loops
      • week 3: Basic algorithms in C
      • week 4: Arrays
      • week 6: Arithmetic types
      • week 7: Structures
      • week 8: Pointers
      • week 9: Strings, dynamic strings
      • week 10: Dynamic arrays, part I-II.
      • week 11: Linked lists
      • week 13: Binary trees
      • week 14: State machines
  • Extras
    • SDL
    • learning tasks
      • Topic 1: Print/scan tasks
      • Topic 2: If/else, switch, loops tasks
      • Topic 3: Static arrays tasks
      • Topic 4: Functions tasks
      • Topic 5: Simple strings tasks
      • Topic 6: Pointers tasks
      • Topic 7: Dynamic Strings tasks
      • Topic 8: Dynamic arrays tasks
      • Topic 9: File I/O tasks
      • Topic 10: Recursion tasks
      • Topic 11: linked lists tasks
      • Topic 12: Binry trees tasks
  • CProg portal

Lecture slides

WeekHandout
1. Introduction
2. Structured elements - Arithmetic types
3. Functions
4. Vector algorithms - Arrays
5. Structures - Operators
6. Pointers - Strings
7. Strings - Dynamic memory management
8. Multidimensional arrays - File handling
9. No lecture
10. Recursion - Union
11. Dynamic data structures - Linked lists
12. Binary trees
13. MT2 consultation
14. Doubly linked lists - Special lists