ecs30 "Introduction to Programming and Problem Solving" (Winter of 2012)
Instructor: S. Felix Wu
Office: 2109 Watershed Science Building
Telephone: (530) 754-7070
Fax: (530) 752-4767
Web: http://www.cs.ucdavis.edu/~wu
- Lecture:
- 3 Kleiber, MWF 10:00am - 10:50pm
- PPT: http://dsl.ucdavis.edu/~wu/ecs30/w2012/lectures
- Discussion:
- Sec.30-A01, M 9:00-9:50am, 2016 Haring
- Sec.30-A02, W 5:10-6:00pm, 1204 Haring
- Sec.30-A03, F 9:00-9:50am, 2016 Haring
- Sec.30-A04, F 1:10-2:00pm, 1 Wellman
- Homeworks: http://dsl.ucdavis.edu/~wu/ecs30/w2012/homeworks
- Old stuff from f2008: http://dsl.ucdavis.edu/~wu/ecs30/f2008
- Professor:
- Shyhtsun Felix Wu,
2109 Watershed, 754-7070, wu@cs.ucdavis.edu
- Teaching Assistants:
- Yun Li, Hyorim Yang, Chris Schwarz, Keith Wang, Ryan Shizhuo Yu
- Office Hours (for both the instructor and the TAs)
- Textbook :
-
Hanly, Jeri R., and Koffman, Elliot B,
Problem Solving and Program Design in C, 6th ed.,
Addison Wesley, 2007, ISBN-10: 0321409914, ISBN-13: 9780321409911
- Course objectives:
-
learn how to use Unix operating system tools to develop and debug programs,
develop expertise in using C programming language,
understand the process of writing efficient and robust programs to
solve problems.
- Course Outline
- Unix tools, including vi, make, and gdb, to develop and debug programs
- Algorithms: general concept, development of efficient algorithms.
- Programming in C
- Scalar data types, concept of data type, standard and
user-defined scalar types.
- Simple Statements, arithmetic and boolean expressions,
assignment statements, simple input and output statements.
- Flow of control, repetitive statements, conditional statements,
unconditional branching
- Data structures: single and multidimensional arrays; character
strings; structs.
- Functions: general concept; declaration and calls; & and * operators;
parameters; introduction to recursion.
- Software engineering: running, debugging, testing programs,
building quality programs.
- Prerequisite
- Math 16A or 21A (may be taken concurrently); prior experience
with basic programming concepts recommended.
- Homeworks and Exams:
- There will be about 8 program projects/homework assignments.
- Both programs and written parts will be submitted using the
handin facility of Unix.
Programs will be due at 11:50pm on the date due.
- No late homework will be accepted!
- All exams are closed-book, no notes allowed.
- Grading:
- Grading breakdown:
- Programming projects (homework): 35%
- Two midterm exams: 40% (20% each)
- Final exam: 25%
Regrading is only considered within one week (7 days) from the date return.
The request must be submitted in writing.
- On-line Info/Discussion:
- Class webpage: http://dsl.ucdavis.edu/~wu/ecs30/
class annoucements, assignments and notes will be posted on this site.
- Course questions and discussions should be posted to
the ecs30b group under Facebook
- Facebook will be the primary ways to interact with the instructor.