EECS Main > Academics > Course Info

EECS 110 - Introduction to Computer Programming

COURSE TITLE: EECS 110 Introduction to Computer Programming

CATALOG DESCRIPTION: Introduction to programming practice using a modern programming language. Analysis and formulation of problems for computer solution. Systematic design, construction, and testing of programs. Substantial programming assignments.

REQUIRED TEXTBOOK: Forouzan & Gilberg, Computer Science: A Structured Programming Approach Using C, Thomson/Course Technology, 2nd edition

COURSE COORDINATOR: Chris Riesbeck

COURSE GOALS: After this course, students will be able to translate problem specifications into the design and implementation of substantial C programs. Students will have written a complete interactive animated graphics application of their own design. Students will be able to apply their understanding of loops, functions, basic data structures, and files to the learning of more advanced concepts and other programming languages.

PREREQUISITES: None

DETAILED COURSE TOPICS:

The Structure of C programs

Software development and pair programming

Literals, variables and types

Expressions, operators

Typecasting

Functions

Conditionals

Loops and random numbers

Arrays

Pointers and Dynamic Memory Allocation

Interactive Animation

Strings

Structures

Applications: searching and sorting

File input and output

HOMEWORK ASSIGNMENTS: Five

LABORATORY PROJECTS:

LAB 1 – The Visual C++ Environment

LAB 2 – Using a Debugger

GRADES:

Programming Assignments – 55%

Midterm – 15%

Final – 30%

COURSE OBJECTIVES: After this course, a student should be able to understand or be familiar with:

The syntax, semantics, and structure of C programs and libraries.

The iterative process of editing, compiling, linking, executing, and debugging.

The software development process, from problem specification, to algorithm design, to implementation

The basic concepts of all programming: constants, variables, expressions, data types, strings, arrays, structures, functions, iteration, file input and output, pointers, dynamic memory allocation

Northwestern University Robert R. McCormick School of Engineering
and Applied Science Electrical Engineering and Computer Science Department