Date: Tue, 14 Jan 1997 23:00:47 GMT Server: NCSA/1.5 Content-type: text/html BU CLA CS 111: Introduction to Computer Science I ---Home Page

BU CLA CS 111: Introduction to Computer Science I

Fall 1996

Schedule


All section references are to the textbook, A Book on C, by Kelley and Pohl, Third Edition.
96.09.03
Goals, methods, overview of entire course, relation to other courses. Structure of a computer: Memory unit, central processing unit, input/output unit.
96.09.05
More on course organization. Assignment 1 accessible through the home page, due Friday Sept 13. Analysis of the program in Section 1.2, pages 5-8.
96.09.10
Statements for control flow: if statement, else statement, while statement. Section 1.6, pages 19-23. Use of flowcharts to design programs.
96.09.12
Statements for control flow: More on while statement, introduce for statement. Nesting of while loops and for loops. Example of a program with nested for loops to print the multiplication table.
96.09.17
Comments, keywords, constants, variables. Sections 2.1 to 2.6.
96.09.19
Program examples: "powers-of-2" program, page 83, and "print-random-numbers" program, page 86.
96.09.24
Precedence and associativity of operators: Sections 2.8 to 2.11. Program examples from Chapter 3, on pages 114, 116 and 117.
96.09.26
Statements for control flow: More on if statement and else statement (Section 4.7), more on while statement (Section 4.8), more on for statement (Section 4.9). Program example from Chapter 4, page 149.
96.10.01
Statements for control flow: More on for statement (Section 4.11), introduce do, goto, break, continue, and switch statements (Section 4.12, Sections 4.14-4.16).
96.10.03
Function definitions (Sections 5.1, 5.2), function prototypes (Section 5.3), program example from the book (Section 5.4).
96.10.08
Function definitions. Local and global variables. Formal and actual parameters. Function invocation (Section 5.7). Scoping rules (Section 5.10).
96.10.10
Function definitions, again. Local and global variables, again. Recursion (Section 5.14).
96.10.15
No class (Monday Schedule).
96.10.17
Mid-term test.
96.10.22
One-dimensional arrays, integer arrays, char arrays (Section 6.1).
96.10.24
Two and three-dimensional arrays (Section 6.12). Pointers (Section 6.2).
96.10.29
Call-by-reference (Setion 6.3), relationship between arrays and pointers (Section 6.4), bubble sort (Section 6.7).
96.10.31
Pointer airthmetic (Setion 6.5), arrays as function arguments (Section 6.6), strings (Section 6.10).
96.11.05
The use of #include and #define (Sections 8.1, 8.2). Macro definitions (Section 8.3), type defiitions (Section 8.4), the operators # and ## (Section 8.10), the assert macro (Section 8.11).
96.11.07
Strings and string handling functions in the standard library (Sections 6.10 and 6.11).
96.11.12
More examples of functions handling arrays and pointers: linear search and binary search.
96.11.14
More examples using the type qualifier const (Section 6.19). Functions as arguments (Section 6.16).
96.11.19
Functions as arguments again (Section 6.16). Structures, accessing members of a structure, initialization of structures (Section 9.1-9.5).
96.11.21
Enumeration types (Section 7.5). More on structures (Section 9.1-9.5). Unions (Section 9.7).
96.11.26
More on structures and unions (Section 9.1-9.7). Bit fields (Section 9.8).
96.12.03
An application for structure, union, and enumeration types: Stacks (Section 9.10).
96.12.08
Structures and list processing (Section 10.1, 10.2, 10.3).
96.12.10
More on structures and list processing (Section 10.1, 10.2, 10.3).

Assaf Kfoury
Created: 96.09.03
Modified: 96.12.10