Fall 2008 CS240 Syllabus

Breaking News:

You must apply for a Linux account in the CS department and a link to the course directory for this course. Please read the instructions at: How do I get a UNIX account for my course?. If you have any questions about the apply process, please contact the operators in the CS Dept. Linux/PC Lab.

After you get your UNIX/email account, you can login using any Sun Blade in the UNIX/PC lab room with your account ID and the password you selected during the apply process. You will also be able to login on the PC's in the lab with your UNIX account ID and a default password that your instructor will provide to the class.

To access our UNIX systems remotely from your PC, download and install one of the secure shell packages. There is a link to the SSH Communications package below for your convenience. When you login remotely, use the host name "users.cs.umb.edu", your account name, and password. Your email address will be your name@cs.umb.edu and it will be included in the course email broadcast list. You are responsible for receiving any email the grader or I broadcast to the list. You may send and receive mail via the UNIX pine program if you are a UNIX user. If you want your email forwarded to another email adress, follow these instructions: Forwarding UNIX email

The practice final exam is posted: Practice Exam 4 with solutions (pdf format).

A Little C Humor

Source Citation: http://xkcd.com

Course Sections


Secure Shell Software Package

SSH Communications Software Download

Other Useful References

Class Schedule, Lecture Notes and Homework Assignments

(Print the Powerpoint version on your own PC or a PC in Healey General Use Labs.)
Class M-W HW Due! Lecture Notes File
01 09/03 Introduction, C, Java vs C, UNIX, "Hello World!" Printable (Powerpoint)
02 09/08 Variables/Symbolic Constants, For, Character I/O Printable (Powerpoint)
03 09/10 hw1 Arrays/Strings, Functions, Arguments, Pseudo Code Printable (Powerpoint)
04 09/15 ASCII Code, Number Systems, Use of Debugger Printable (Powerpoint)
05 09/17 Scope of Variables, Names, Data types Printable (Powerpoint)
06 09/22 hw2 Number Systems, Bit Operations Printable (Powerpoint)
07 09/24 Const, Enum, Operators, HW2 Printable (Powerpoint)
08 09/29 Finish K & R Chapter 2 Printable (Powerpoint)
09 10/01 hw3 K & R Chapter 3, Review for Exam #1 Printable (Powerpoint)
10 10/06 Practice Exam Exam #1: Covers through end of Chapter 3, UNIX, and Debugger
11 10/08 Functions, Multimodule Programs, MAKE Printable (Powerpoint)
10/13 Columbus Day
12 10/15 Registers, Macros, Conditionals, Recursion Printable (Powerpoint)
13 10/20 hw4 Introduction to Pointers Printable (Powerpoint)
14 10/22 Pointers to Pointers, Command Line Arguments Printable (Powerpoint)
15 10/27 Memory Allocate/Free, Pointers to Functions, Structs Printable (Powerpoint)
16 10/29 Structs, Arrays of Structs, Pointers to Structs Printable (Powerpoint)
17 11/03 hw5 Review Declarations/Definitions/Memory Allocation, Intro to C99 Printable (Powerpoint)
18 11/05 Self Referential Structures, Intro to HW6 Printable (Powerpoint)
19 11/10 Practice Exam Exam #2: Covers through end of Section 6.4 plus MAKE
11/11 Veteran's Day
20 11/12 Table Look Up, Multi-Dimensional Arrays, Typedefs, Unions, Bit Fields Printable (Powerpoint)
21 11/17 UNIX grep/Pipes, Formatted I/O, Variable Length Argument Lists Printable (Powerpoint)
22 11/19 hw6 Intro to HW7, File Access, Error Handling Printable (Powerpoint)
23 11/24 Line I/O, Standard Library Functions, UNIX Time Printable (Powerpoint)
24 11/26 UNIX Shells, Processes, Environment, Variables Printable (Powerpoint)
11/27 Thanksgiving Holiday
25 12/01 hw7 Shell Scripts, Review for Exam 3 Printable (Powerpoint)
26 12/03 Websites on UNIX Systems Printable (Powerpoint)
27 12/08 Practice Exam Exam #3: Covers through end of Chapter 7, UNIX Shells/Processes/Scripts
28 12/10 hw8 Course Review, Course Evaluation Printable (Powerpoint)

Finals Week - Optional Final Exam: Covering the Entire Course


Homework assignments will be C programing projects.

A description of the work required for each homework assignment is available within the syllabus above. The rest of the materials for each homework must be accessed using UNIX as explained in each assignment.

Course UNIX Home Directories

UNIX home directory for getting homework assignment files is ~bobw/cs240

After you apply for the course, the operators will create a cs240 soft link in your home directory. That link will point to your subdirectory for doing your homework. You will create subdirectories and put all of your homework files there. Do not change the ownership, the group, or the modes on your homework directories. That could prevent me and the graders from reading your files and/or allow other students to read your homework files. Doing this will be considered a possible infraction of the academic honesty policy.


The grader for CS240 Section 1 is Paskorn Champrasert(email address: paskorn@cs.umb.edu).

Grading Policy:


Homework Assignments

Course Withdrawal and Pass/Fail Deadline: Thurs, 11/06/2008

You will get grades back for two Exams and the first few homework assignments before the Registrar's withdrawal and pass/fail deadline so that you will know where you stand in time to make that decision.


Section 504 of the Americans with Disabilities Act of 1990 offers guidelines for curriculum modifications and adaptations for students with documented disabilities. If applicable, students may obtain adaptation recommendations from the Ross Center for Disability Services in the Campus Center (617-287-7430). The student must present these recommendations and discuss them with each professor within a reasonable period, preferably by the end of Drop/Add period.

Student Conduct:

Students are required to adhere to the University Policy on Academic Standards and Cheating, to the University Statement on Plagiarism and the Documentation of Written Work, and to the Code of Student Conduct as delineated in the catalog of Undergraduate Programs. The Code is also available online at: Code of Student Conduct