cps125 - digital computation and programming - course outline and cmf

2
Schedule of activities: (the material may not necessarily be covered in the exact order given) Week # (Dates) Contents / Topics Course Slides Textbook Readings Example Programs to Review Labs, tests and projects 1 (Jan 5 9) Course introduction. Algorithms. Computer systems. Internal representations. Programming languages. Problem solving. Program development. Lesson #1 Chapter 1 NO LAB 2 (Jan 1216) Introduction to C: Preprocessor directives. Comments. Structures of C instructions. Program skeletons. Variables. Identifiers. Rules for identifiers. Placeholders (formatting strings). printf and scanf statements. Reading/writing data from/to files (fscanf and frprintf). Reading/writing data from/to files (redirection using scanf and printf). Assignment operator (=). Lesson #2 Chapter 2 (2.1, 2.2, 2.3 2.4, 2.6) Section 01 (all programs) NO LAB 3 (Jan 1923) Variables, Operators, and Expressions: Types of variables. Inaccuracies. Basic data types (int, double, char). Operators (+, ,*,/,%). Memory and pointers. Integer expressions (division). Double expressions. Mixed expressions. Explicit conversion (casting). Unary operator (). Evaluating expressions (rules). Building expressions. Math functions (math.h). Other functions (abs, rand / stdlib.h). Increment(++) and decrement(). Lesson #3 Chapter 2 (2.5, 2.7, 2.8) Chapter 3 (3.1, 3.2) Chapter 7 (7.1, 7.2) Section 02 (all programs) LAB #1 LABS START ON JAN. 19 4 (Jan 2630) Logical Operators and Selection Statements: Comparison operators (<, <=, >, >=, ==, !=). Logical operators (&&, ||, !). Evaluating logical expressions. Building logical expressions. Comparing characters. if statements (one alternative, two alternatives, with compound statements, nested). switch statement. Lesson #4 Chapter 4 Section 03 (all programs) LAB #2 5 (Feb 2 6) Repetition and Loops I: Theoretical kinds of loops (counting loops, sentinel loops, EOF loops, input validation loops, general loops). Loops in C (while statement, for statement). Lesson #5 Chapter 5 (5.1 to 5.3) Section 04 (1 to 5) LAB #3 6 (Feb 9 13) Repetition and Loops II: C statements implementing advanced loops. Nested loops. Practical applications.Repetition and Loops II: Loops in C (EOFcontrooled loops, dowhile statement, input validation loops. Nested loops. Lesson #5 Chapter 5 (5.4 to 5.11) Section 04 (6 to 10) LAB #4 PROJECT #1 * (Feb 1620) Family Day / Reading Week: No classes, no labs. Modular Programming and Functions I:

Upload: hassankhan

Post on 16-Jan-2016

6 views

Category:

Documents


0 download

DESCRIPTION

Criteria Break down of important topics for introductory level course for C programming.

TRANSCRIPT

Page 1: CPS125 - Digital Computation and Programming - Course Outline and CMF

3/12/2015 CPS125 ­ Digital Computation and Programming ­ Course Outline and CMF

data:text/html;charset=utf­8,%3Cb%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20font­family%3A%20'Droid%20Sans'%2C%20sans­ser… 1/2

Schedule of activities:(the material may not necessarily be covered in the exact order given)Week#

(Dates)Contents / Topics Course

SlidesTextbookReadings

ExampleProgramsto Review

Labs, testsand

projects

1(Jan 5­9)

Course introduction. Algorithms. Computersystems. Internal representations.Programming languages. Problem solving.Program development.

Lesson#1 Chapter 1 ­ NO LAB

2(Jan12­16)

Introduction to C: Preprocessor directives.Comments. Structures of C instructions.Program skeletons. Variables. Identifiers.Rules for identifiers. Placeholders (formattingstrings). printf and scanf statements.Reading/writing data from/to files (fscanf andfrprintf). Reading/writing data from/to files(redirection using scanf and printf).Assignment operator (=).

Lesson#2

Chapter 2(2.1, 2.2,2.3 2.4,2.6)

Section 01(allprograms)

NO LAB

3(Jan19­23)

Variables, Operators, and Expressions:Types of variables. Inaccuracies. Basic datatypes (int, double, char). Operators (+,­,*,/,%). Memory and pointers. Integerexpressions (division). Double expressions.Mixed expressions. Explicit conversion(casting). Unary operator (­). Evaluatingexpressions (rules). Building expressions.Math functions (math.h). Other functions(abs, rand / stdlib.h). Increment(++) anddecrement(­­).

Lesson#3

Chapter 2(2.5, 2.7,2.8)

Chapter 3(3.1, 3.2)

Chapter 7(7.1, 7.2)

Section 02(allprograms)

LAB #1LABSSTART ONJAN. 19

4(Jan26­30)

Logical Operators and Selection Statements:Comparison operators (<, <=, >, >=, ==, !=).Logical operators (&&, ||, !). Evaluating logicalexpressions. Building logical expressions.Comparing characters. if statements (onealternative, two alternatives, with compoundstatements, nested). switch statement.

Lesson#4 Chapter 4

Section 03(allprograms)

LAB #2

5(Feb 2­6)

Repetition and Loops I: Theoretical kinds ofloops (counting loops, sentinel loops, EOFloops, input validation loops, general loops).Loops in C (while statement, for statement).

Lesson#5

Chapter 5(5.1 to5.3)

Section 04(1 to 5) LAB #3

6(Feb 9­13)

Repetition and Loops II: C statementsimplementing advanced loops. Nested loops.Practical applications.Repetition and Loops II:Loops in C (EOF­controoled loops, do­whilestatement, input validation loops. Nestedloops.

Lesson#5

Chapter 5(5.4 to5.11)

Section 04(6 to 10)

LAB #4PROJECT#1

*(Feb16­20)

Family Day / Reading Week: No classes, no labs.

Modular Programming and Functions I:

Page 2: CPS125 - Digital Computation and Programming - Course Outline and CMF

3/12/2015 CPS125 ­ Digital Computation and Programming ­ Course Outline and CMF

data:text/html;charset=utf­8,%3Cb%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20font­family%3A%20'Droid%20Sans'%2C%20sans­ser… 2/2

7(Feb23­27)

Concepts. Defining functions. Callingfunctions. Scope of names. Function withvalue arguments (no arguments/no result, 1argument/no result, 2 or more arguments/noresult, no arguments/1 result, 1 argument/1result, 2 or more arguments/1 result).Number­Order­Types ofarguments/parameters pairs.

Lesson#6

Chapter 3(3.3 to3.6)

Section 05(allprograms)

NO LABPROJECT#1 DUEMIDTERMTEST(SAT.FEBRUARY28 TBA)

8(Mar 2­6)

Modular Programming and Functions II:Using pointer parameters to simulate multipleresults from a function. Recursion.

Lesson#6 Chapter 6

Section 06(allprograms)

LAB #5

9(Mar 9­13)

Arrays I: Numerical arrays of one dimension.Passing such arrays to functions (pointersand arrays). Dynamic allocation of 1Dnumerical arrays.

Lesson#7

Chapter 8(8.1 to8.6)

Section 07(allprograms)

LAB #6

10(Mar16­20)

Arrays II: Multidimensional arrays. Passingsuch arrays to functions (pointers andarrays). Dynamic allocation of 2D arrays.Basic strings. Case studies.

Lesson#7

Chapter 8(8.7 to8.9)Chapter 9

Section 08(allprograms)Section 09(allprograms)

LAB #7PROJECT#2

11(Mar23­27)

Structures: The typedef construct. Operationson structures. Structures and functions.Pointers on structures (arrow operator).

Lesson#8

Chapter11 (11.1to 11.5)

Section 10(1 and 2)

LAB #8PROJECT#2 DUE

12(Mar30­Apr3)

Linked Lists. Command line arguments. Lesson#8

Chapter12

Section 12(allprograms)

LAB #9