EECE.2160: ECE Application Programming

Instructors: Dr. Michael Geiger and Peilong Li

Spring 2016

 

Course Schedule

This schedule contains a tentative schedule of topics we will cover throughout the term; this schedule is subject to change. As the semester progresses, I will update the schedule to show the actual dates on which we cover material, as well as provide links to the lecture slides and programming assignments. Note that most lectures are associated with some section(s) of the textbook, which I suggest you read prior to class.

 

One note on lecture recordings--as discussed in class, Section 201 trails Section 202 by one lecture. The recordings therefore won't always line up with the week in which the links are posted. For example, Week 1 contains links to lectures 1 and 2, but Section 201 doesn't cover the material in lecture 2 until the second week of class.

 

Please note that the exam dates are fixed--the first exam will be held on Wednesday, February 17 in class, the second exam will be held on Wednesday, March 30 in class, and the third exam will be held on Friday, May 6, from 6:30-9:30 PM in Pasteur 301.

 

Week Date (Mon.) Lecture Topics Handouts

Echo360 Recordings

Sec: 201 | 202

Reading Assignments

1

1/18

 No Monday lecture--Martin Luther King, Jr. Day

 1. Course introduction/overview

 2. Basic C program structure; data in C

 Syllabus

 Program grading guidelines

 Lec. 2 questions

 Lec. 1: 201 | 202

 Lec. 2: 201 | 202

 W: 2.1-2.4, 2.8

 F: 2.6-2.7, 7.1-7.3

 Program 1

 (due 1/27)

 P1 deductions

2

1/25

 3. Variables

 4. Operators; output with printf()

 5. Input with scanf()

 Lec. 3 questions

 Lec. 4 questions

 Lec. 5 questions

 Lec. 3: 201 | 202

 Lec. 4: 201 | 202

 Lec. 5: 201 | 202

 M: 2.4

 W: 3.1, 4.1-4.2

 F: 2.5, 3.2

 Program 2

 (due 2/5)

 P2 deductions

3 2/1

 6. PE1 (Flowcharts, debugging)

 7. If statements

 No Friday lecture--university closed due to snow

 Lec. 6 questions

 Lec. 7 questions

 Lec. 6: 201 | 202

 Lec. 7: 201 | 202

 M: None

 W: 5.1-5.2

 Program 3

 (due 2/17)

 P3 deductions

4 2/8  No Monday lecture--university closed due to snow

 8. Switch statements

 9. While and do/while loops

 Lec. 8 questions

 Lec. 9 questions

 Lec. 8: 201 | 202

 Lec. 9: 201 | 202

 W: 5.3

 F: 6.1-6.2

5 2/15

 No Monday lecture--Presidents Day

 10. PE2 (Conditionals, while loops) (Tuesday, 2/16)

 11. Exam 1 Preview

 Friday, 2/19: EXAM 1 (Flowchart, solution)

 Lec. 10 questions

 Completed PE2 code

 Lec. 10: 201 | 202

 Lec. 11: 201 | 202

 No reading

 Program 4

 (due 2/29)

 P4 deductions

6 2/22

 12. For loops

 13. Functions

 14. Exam 1 Review

 Lec. 12 questions

 Lec. 13 questions

 Lec. 12: 201 | 202

 Lec. 13: 201 | 202

 Lec. 14: 201 | 202

 M: 6.3-6.4

 W: None

 F: 9.1-9.5

7 2/29

 15. Function examples

 16. Pointers; pointer arguments

 17. More on pointers

 Lec. 15 questions

 Lec. 16 questions

 Lec. 17 questions

 Lec. 15: 201 | 202

 Lec. 16: 201 | 202

 Lec. 17: 201 | 202

 M: None

 W: 11.1-11.4

 F: None

 Program 5

 (due 3/9)

 Prog. 5 files

 P5 deductions

8 3/7

 18. PE3 (Functions)

 19. Arrays (One- and two-dimensional)

 20. Arrays and functions

 Lec. 18 questions

 PE3 solution

 Lec. 19 questions

 Lec. 20 questions

 Lec. 18: 201 | 202

 Lec. 19: 201 | 202

 Lec. 20: 201 | 202

 M: None

 W: 13.1-13.6

 F: None

 Program 6

 (due 3/28)

 P6 deductions

9 3/14

 No classes--Spring Break

   

 

 
10 3/21  No Monday lecture--lecture canceled due to snow

 21. Arrays and functions (continued)

 22. Character arrays and strings

 Lec. 21 questions

 Lec. 22 questions

 Lec. 21: 201 | 202

 Lec. 22: 201 | 202

 W: 8.1

 F: 8.2, 12.1-12.4

11 3/28

 23. Exam 2 Preview

 Wednesday, 3/30: EXAM 2 (Solution)

 24. Strings (continued), Exam 2 Review

 Lec. 24 questions

 Lec. 23: 201 | 202

 Lec. 24: 201 | 202

 M, W: No new reading

 F: None

 Program 7

 (due 4/11)

 Prog. 7 files

 P7 deductions

12 4/4

 25. Structures

 26. Structures (cont.)

 Wednesday, 4/6--last day to withdraw

 27. PE4 (Structures)

 Lec. 25 questions

 Lec. 26 questions

 Lec. 27 questions

 PE4 Code:

 Name.h
 Name.c
 StudentInfo.h
 StudentInfo.c
 PE4_main.c

 Lec. 25: 201 | 202

 Lec. 26: 201 | 202

 Lec. 27: 201 | 202

 M: 16.1-16.3

 W: None

 F: None

13 4/11

 28. Dynamic memory allocation

 29. Dynamic memory allocation (continued)

 30. Dynamically allocated data structures

 Lec. 28 questions

 Lec. 29 questions

 Lec. 30 questions (also used in Lec. 31, 32)

 Lec. 28: 201 | 202

 Lec. 29: 201 | 202

 Lec. 30: 201 | 202

 M: 17.1-17.4

 W: None

 F: 17.5-17.6

 Program 8

 (due 4/22)

 Prog. 8 files

14 4/18

 No Monday lecture--Patriots' Day

 31. Dynamically allocated data structures (cont.)

 32. Dynamically allocated data structures (cont.), file I/O

 Lec. 32 questions (also used in Lec. 33)

 Linked list code:
 LLnode.h
 LLnode.c
 Main program

 Lec. 31: 201 | 202

 Lec. 32: 201 | 202

 W: None

 F: 22.1-22.5

 Program 9

 (due 4/29)

 Prog. 9 files

15 4/25

 33. File, character, and line I/O

 34. Exam 3 Preview

 Fri. 4/29: Lec. 34 for Sec. 201, in-class office hours for Sec. 202

 Classes end Friday, 4/29

 Lec. 33: 201 | 202

 Lec. 34: 201 | 202

 No new reading

 
  F, 5/6

 EXAM 3: Friday, May 6, 6:30-9:30 PM, Pasteur 301

 List of related problems from prior exams

 Q&A session: Thursday, May 5, 11:30 AM-1 PM, Kitson 301

 Course evaluation form--must be completed before exam