C

COMS W1003-1

Introduction To Computer Programming In C

COURSE INFORMATION

Call Number: 63652

Points: 3

Day/Time:  Mo-We 10:35am-11:50am 

Location:  417 Mathematics Building

Notes:  START DATE: 01/19/11

             END DATE: 05/02/11

             NO CLASS ON 03/14-16/10

 

Instructor: Michele Merler

Office:  624 CEPSR

Email:  mmerler@cs.columbia.edu

Office Hours: Friday 12pm-2pm

 

TAGaurav Agarwal

Office: Mudd 122A (TA room)

Email: ga2310@columbia.edu

Office Hours: Tuesday 11am-12pm

Syllabus (tentative)

DATE

TOPIC

MATERIAL

TASKS DUE

 

January 19

 

Introduction - Computer Science, Programming and C, “Hello World”

 

Lecture1

 

January 24

CUNIX and Programming Environments Tutorial. Compiling “Hello World”

Lecture2

 

HW0

January 26

“Hello World” revisited. Coding style and comments. Variables, types and basic operators

Lecture3

helloworld.c

Read PCP Ch 1,

Ch 2, pages 11 to 15, 33

January 31

Basic Operators, printf(), binary operations

Lecture4

Read PCP Ch 3 and 4

February 2

Binary Logic, arrays and strings

Lecture5

code

Read PCP Ch 4 and 5

February 7

Command line input, Conditional and control statements

Lecture6

Read PCP Ch 6

February 9

Loops, Functions and scope of variables, recursion

Lecture7

code

  Read PCP Ch 8

February 14

Recursion, Debugging

Lecture8

code

Read PCP Ch9

HW1

February 16

The C Preprocessor, header files, macros.

Lecture9

code

  Read PCP Ch10

February 21

Advanced types: structures, unions, typedef, enum.

Lecture10

code

Read PCP Ch12

February 23

Pointers

Lecture11

code

Read PCP Ch13

February 28

Pointers(continued)

Lecture12

code

HW2

March 2

File I/O

Lecture13

code

Read PCP Ch14

March 7

Midterm review

 

 

March 9

MIDTERM

 

 

March 14

NO CLASS (Spring Recess)

 

 

March 16

NO CLASS (Spring Recess)

 

 

March 21

Midterm correction, C Standard Libraries

Lecture14

testLibraries.c

HW3

March 23

Dynamic memory allocation

Lecture15

code

 

March 28

Dynamic memory allocation (continued)

dma.c

Read CPL Ch5

March 30

Main() function arguments, argc, argv

Lecture17

code

 

April 4

Program design, modules, makefiles

Lecture18

code

Read PCP Ch 18

April 6

Basic data structures, Linked Lists and Binary Trees

Lecture19

code

Read PCP Ch 17

April 11

Complexity analysis and big-O notation

Lecture20

HW4

April 13

Sorting

Lecture21

 

April 18

Pointers to functions

Lecture22

sorting.c

 

April 20

Trees, C++

Lecture23

code

 

April 25

Object oriented programming. C++ (continued)

Lecture24

code

 

April 27

Free Topic. Final Review

Lecture25

HW5

May 2

Free Topic. Final Review

 

 

May 9

9am - 12pm

 

Final

 

In class

417 MAT