CIS 190: Introduction to Procedural Programming
Home
Lectures
Assignments
Laboratory
Announcements
Instructor
Li Shen
Office: Dion 307A
Phone: (508) 910-6691
Email: lshen@umassd.edu
Office Hours: Tue 8:30-10am, Thu 8:30-10am, Fri 12-1pm (or by appointment)
TA
Lecture Meeting
Tue and Thu, 11:00am-12:15pm, Dion 101
Lab Meeting
- CIS 190-03L: Mon, 8:00am-9:50am, Dion 305
- CIS 190-05L: Mon, 10:00am-11:50am, Dion 305
- CIS 190-06L: Wed, 10:00am-11:50am, Dion 305
Lab sections are conducted by Mr. Derek Beaton (our TA).
Prerequisites
Course Objectives
- The purpose of this course is to learn the fundamentals of procedural programming using C programming language under UNIX operating system.
Course Description
Procedural Programming (C/C++) under Unix. Data types, variables declarations, arithmetic expressions, conditional statements, macros, function prototypes, standard libraries, file processing, pointers, structures, unions, and dynamic memory management are discussed. Unix file system, shell scripts, input/output redirection, piping, programming with standard I/O, and Unix system calls are covered.
Course Materials
- Textbooks
- Kelley A., Pohl I, "A Book on C: Programming in C", Fourth Edition, Addison-Wesley, 1998, ISBN 0-201-18399-4 (primary textbook). http://www.cs.ucsc.edu/~pohl/abc4.html.
- Sobell M., "A Practical Guide to Red Hat Linux: Fedora Core and Red Hat Enterprise Linux", Prentice-Hall, 2004, ISBN 0-13-147024-8 (supplementary textbook).
- Useful References
Homework
- Homework assignments will be posted online. Homework is due at the beginning of class on the announced due date. Any exceptions must be approved by the instructor in advance. Late homework will not be accepted.
- Some of the exercises will be routine, but others will be more challenging. I hope that you will benefit from working on the more difficult ones.
- I encourage discussion of homework assignments between students. However, your submitted homework must be entirely your own. You may not copy anything directly from another student's work. You should note with whom you discussed the problem at the beginning of your solution write-up. Note that discussion between two students will be most useful when both students have already made serious attempts to solve the problem on their own.
Requirements and Grading
Due to the nature of the course and the frequency of assignments, attendance is mandatory. You are responsible for all announcements and for all material presented in the lecture sessions. Come prepared for class and read the assigned material in advance of lectures. After the lecture, re-read the material.
Your numerical scores will be based upon the following contributions:
- Homeworks: 20%
- Labs: 20%
- Midterm exam: 15%
- Final exam: 35%
- Quizzes and class attendance: 10%
The letter grades will be assigned using the following approximate scale: (A+,A,A-)[100-85], (B+, B, B-)[85-70], (C+,C,C-)[70-60], (D+,D,D-)[60-50], and F[50-0].
Important Dates
- 03/16/06 (in class): Midterm exam
- 05/23/06 (Tue. 11:30am-2:30pm): Final exam
Academic Honesty
- The UMass Dartmouth Academic Ethical Standards and Student Judicial Code apply to your conduct in this course. Please refer to the following materials for details.
- All work submitted for credit must be your own. You may, however, discuss your homework assignments with your classmates, our TA and Professor Shen.
- You should writeup your own solutions and neither read nor copy another person's solution or portions of their solution - this includes solutions from any web page (other than our class web page) that you find on the web.
- You cannot collaborate or copy in any way on exams.
- If you have any questions as to whether some action would be acceptable under the Academic Ethical Standards, please speak to me, and I will be glad to help clarify things. It is always easier to ask beforehand than to have trouble later!
Disability Statement
If you have a disability and feel you will need accommodation in order to complete course requirements, please contact Office of Disabled Student Services, Group I, Lower Level.