Week |
Tuesday |
Thursday |
0
|
|
Sep. 26
|
Lecture 1: Introduction to C
|
- Course administration, set up
- Computers and Programming
- Client, server, Linux
- Linux system commands
|
|
1
|
Oct. 1
|
Lecture 2: Introduction to C
|
- Programming in C
- Our first C program
|
|
Oct. 3
|
Lecture 3: Arithmetic in C
|
- Program structure
- Input, computation, output
- Basic types, arithmetic operators
|
|
2
|
Oct. 8
|
Lecture 4: Arithmetic in C
|
- Arithmetic approximation
- Type conversion, explicit, implicit
- Arithmetic expressions
|
|
Oct. 10
|
Lecture 5: Conditions, counting, and repetition
|
- Relational, logical operators
- Conditional expressions, statements
- Counter operators
|
|
3
|
Oct. 15
|
Lecture 6: Conditions, counting, and repetition
|
- While-loop
- Review, Quiz: Introduction to C
- Basic types, operators
- Expressions, statements
|
|
Oct. 17
|
Midterm Examination
|
- Midterm 1: Basic C programming
- Basic types, operators
- Expressions, statements
|
|
4
|
Oct. 22
|
Lecture 7: Structured programming
|
- Formatting specifiers
- Programming principles
- If-Else statement
- Switch statement
|
|
Oct. 24
|
Lecture 8: Structured programming
|
- Repetition statements
- While, Do-While, For loops
- Jump statements
- Program development and debugging
|
|
5
|
Oct. 29
|
Lecture 9: Structured programming
|
- Function concepts and terms
- Hierarchy of functions
- Function call graph, trace
- Stack, stack frames, debugging
|
|
Oct. 31
|
Lecture 10: Functions
|
- Scopes, scope rules
- Local variables, debugging
- Math library functions
- Standard library functions
|
|
6
|
Nov. 5
|
Lecture 11: Data structures
|
- Data structure introduction
- Arrays, array operators
- Multi-dimensional arrays
|
|
Nov. 7
|
Lecture 12: Data structures
|
- Pass by value, pass by reference
- Character arrays: Strings
- Sorting algorithm BubbleSort
|
|
7
|
Nov. 12
|
Lecture 13: Review
|
- Review, Quiz: Structured programming
- Functions
- Data structures
- Debugging
|
|
Nov. 14
|
Midterm Examination
|
- Midterm 2: Structured programming
- Functions
- Data structures
- Debugging
|
|
8
|
Nov. 19
|
Lecture 14: Recursion, data structures
|
- Concept of recursion
- Recursion vs. iteration
- Structures, unions, enumerators
- Type definitions
|
|
Nov. 21
|
Lecture 15: Data structures, pointers
|
- Data in memory, bits, bytes
- Number formats, bin/oct/dec/hex
- Data objects in memory
|
|
9
|
Nov. 26
|
Lecture 16: Data structures, pointers
|
- Introduction to pointers
- Pointer operations
- String manipulation
|
|
Nov. 28
|
Holiday: Thanksgiving
|
|
10
|
Dec. 3
|
Lecture 17: File processing, translation units
|
- Standard I/O streams, file I/O streams
- Compiler components
- Multiple translation units
|
|
Dec. 5
|
Lecture 18: Review
|
- Review, Quiz: Recursion, iteration
- Data structures, pointers
- File processing, translation units
|
|
Final
|
|
|