CSE 142: Computer Programming I
Course Administration
These course materials are from the Autumn 2000 offering of CSE 142 taught by
Richard Anderson and Martin Dickey and are being made available for
self study use along with the archived lecture material. This is an
abbreviated version of the information
handout for the UW course.
- Web sites
- Online: http://www.online.cs.washington.edu/cse142/
- UW CSE: http://www.cs.washington.edu/education/courses/cse142/
- Course Goals
- CSE 142 provides an introduction to Computer Science; in
particular, the goal is for
students to learn the general principles of programming, including
how to design,
implement, document, test, and debug computer programs. To make
these principles concrete, the C programming language is used.
- Prerequisites
- No prerequisites are listed in the catalog. However, it is
assumed that students in this course have met the minimum
requirements for admission to UW, and in particular: three
years of mathematics, at least at the level of geometry and
advanced (second-year)
algebra; two years of science; and four years of English.
The course is not
recommended for students who are at a remedial level in English or
mathematics.
- Course Format
- The UW class meets three times a week for lectures and once a
week for quiz section. The class does not meet in a computer lab on
a regularly scheduled basis. Students work on homework
assignments on their own time. Homework has frequent, inflexible
deadlines. Many students who take this course report that it makes
great demands on their time.
- Topics Covered and Schedule
- The main topics include: the concept of a computer and of
programs; variables, values,
and types; functions; program organization; style; iteration;
arrays, including 2-D
arrays; structs and arrays of structs; strings; and brief
introductions to sorting,
recursion, graphics, and event-driven programming. A
day-by-day lecture
schedule may be found on the World Wide Web. This
shows topics covered, textbook sections for each topic, and dates
of major events.
- Textbook
- The text book used at UW for the course is: Jeri R. Hanly and Elliot B. Koffman, Problem Solving and Program Design in C,
third edition, Addison Wesley, 1999. The second edition
(1996) may also be used with
occasional minor adjustments. Lecture readings are indicated for
this text. Many other textbooks provide similar coverage, and can
be substituted.
- Exams
- There are two 45-minute midterm exams, and a 100-minute comprehensive final exam. Tests include a mixture of multiple-choice,
short-answer, and programming questions.
- Homework
- Computer programming is best learned hands-on. Five
programming projects are
assigned throughout the course, as well as a number of smaller
exercises, which
include problems to solve, questions to answer, short writing
assignments, diagrams or
charts to draw, etc.. Assignments are done by each student
individually, unless
explicitly directed otherwise.
- Grading Scheme
- Homework: 40%. This includes programming projects as well as possibly
other types of assignments. Not all assignments are equally
weighted, with later projects generally weighted more heavily than the earlier ones.
- Midterm #1: 12%
- Midterm #2: 17%
- Final Exam: 26%
- Quizzes or other: 5%
- Labs
- Students at University of Washington have access to a PC lab which
runs Windows and Microsoft Visual C++ 6.0 plus
the usual browsers, mail, and other web tools.
Many students choose to
work at home,
especially on home PC's that have software similar to that
in the University labs. The course does not require the use
of any particular software, although some aspects of the course are
more convenient if the same programming environment is used.