C / C++ PROGRAMMING
CIS54 Course Outline - Spring 2011
INSTRUCTOR: Dan McElroy
OFFICE: T-410 See the last page of the Syllabus for office hours
or http://unix.sjcc.edu/OfficeHours.htm
PHONE: 298-2181 x 3235
E-MAIL: Dan.McElroy@sjcc.edu
TEXTBOOKS (Optional):
C++ How to Program 7th Edition,
by Deitel & Deitel - Prentice Hall,
ISBN:0-13-611726-0
COURSE OVERVIEW AND OBJECTIVES:
C is a general-purpose programming
language which features economy of expression, modern control flow and data
structures, and a rich set of operators. C++ is an object oriented programming
language that is built using the C language as a base. The course will explore
these features through a variety of programming assignments. This course is
for students and professional programmers whose needs include applications
packages and/or systems software in software environments where efficiency
and portability are important.
This course covers programming using C and C++. Upon completion of this course, the student will be able to:
----------------------------- LAB CONTENT ----------------------------------
MOODLE:
Moodle may contain class notes, PowerPoint slides,
class announcements, the course syllabus, test dates, and other information
for the course. Lab assignments and homework must be submitted using Moodle.
The assignments must have your name, student ID, and exercise name at the
top of the document. Late assignments will be accepted with a penalty. Make
sure you can login to your Moodle account the first week of class. If you
are adding the class, your Moodle account should be active within two hours
of your completed add request. Supplementary information for the course on
Moodle.
E-MAIL:
All students are required to obtain an e-mail account in addition to their
Moodle account. All correspondence through Moodle uses the e-mail address
that you have listed with the Admissions and Records office. This includes
any messages that I send to the class as well as scores for each assignment.
It is important that you update your e-mail address if it changes. If
you have any questions about the course or need assistance, please contact
me in person or by telephone during office hours or by e-mail at any time.
You can update your e-mail address
by clicking the "CLICK HERE" message on the purple rectangle when
you go to the MyWeb page at https://myweb.sjeccd.edu
(NOTE the 'S' in https, and the 'E' in sjeccd). If you have an e-mail filter
for spam, etc., it is your responsibility to make sure that you are receiving
the e-mails that I send you, either from my college address Dan.McElroy@sjcc.edu,
or e-mails sent through Moodle.
ACCESS TO CAMPUS COMPUTER LABS:
San Jose City College has many
computer labs on campus. The labs used by the CIS and CA departments have
all of the software installed that you will need to complete the class assignments.
Most of the other labs on campus will have Microsoft Office installed, but
may not have a C/C++ compiler installed. You need to be an SJCC registered
student to use the computers in the Library. You may need to be registered
for tutoring to use the LRC labs. Other labs serve different departments on
campus. You may need to be registered in one of their classes to use their
labs.
LAB ASSIGNMENTS:
Some of the lab assignments will take longer than the
time available during class. It is expected that each student will make use
of the Open-Lab time to complete assignments as needed. Open-Lab hours are
made available to students registered in CIS courses. Instructions will be
given during the first class meeting on how to use the open lab.
Programs turned in must include printouts of both the program and the results of testing the program. Some labs may require that a disk be turned in as part of the assignment. Programs will be graded on whether they work, quality of output, program readability and appearance, program construction and completeness of testing, and very importantly - documentation.
LAB ASSIGNMENTS MUST INCLUDE:
1. Your name
2. Printouts of C/C++ code
3. The results of running the lab when available
4. A written description of the lab project in English
In other words, if you want to stay in the class, you need to submit work on a regular basis or your may be dropped. If you want to drop the class, you should drop the class by one of the drop dates to make sure it happens for the best result on your transcript.
GRADING:
|
Homework |
150 points |
|
|
||
|
Lab work |
310 points |
|
|||
|
Final Exam |
80 points |
|
|||
|
Total |
540 points |
|
|||
|
|
NO-NAME and LATE PENALTIES:
You must include your name,
student ID or Moodle ID, and exercise name on all work you submit. Unless
otherwise specified in an assignment, your name, ID and exercise name should
appear in the upper right corner of your lab report or essay. Penalties will
be applied AFTER the score for your assignment has been computed. A maximum
of 50% penalty be applied for No-name or Late penalties. No work will be accepted
after the Friday following the final exam.
|
Penalty
|
Cause |
|
1 point
|
No name on submitted assignment |
|
1 point
|
No ID on the submitted assignment. Moodle or SJCC student ID is acceptable. |
|
1 point
|
No assignment name on the submitted assignment |
|
1 point
|
Student name, ID or assignment name is hand written instead of typed |
|
-10%
|
Assignment is one, two, or three days late |
|
-25%
|
Assignment is four, five, or six days late |
|
-50%
|
Assignment is one or more weeks late |
CIS 054 COURSE OUTLINE (subject
to change)
Week
|
Lecture Topic
Chapter numbers refer to C++ How to Program 7/e |
Lab Assignment
Page numbers refer to C++ How to Program 7/e |
Homework
Page numbers refer to C++ How to Program 7/e |
Points this week
|
|||||||||
Week 1
|
Class Orientation Program Design |
Paycheck Program Copy the code into a Word document and submit using Moodle. (10 points) |
Read Chapter 1 and do the Self-Review Exercises. Do not turn in the Self-Review Exercises for any of the chapters. Answer questions from Exercises 1.4 through 1-11 pages 36-37. Submit using Moodle. (10 points) |
20 | |||||||||
Week 2
|
Chapter 2 Visual C++ IDE Program Design |
Largest-Smallest
Exercise 2.23 page 66 Odd-or-Even Exercise 2.24 page 66. Copy the code for each program in to a Word document and submit using Moodle. (10 points each) |
Read Chapter 2 and do the Self-Review Exercises. Answer questions from Exercises 2.7 through 2.15 pages 64-65. Submit using Moodle. (10 points) |
30 | |||||||||
Week 3
|
Chapter 4 Control
Statements: Part 1 Control Structures, if.else, while, loops, ++/-- |
Gas Mileage Program Exercise 4.13 page 156. Copy the class code, the test application, and a screen-shot showing your program has correctly processed three sets of data into a Word document and submit using Moodle. (20 points) |
Read Chapter 4 and do the Self-Review Exercises. Answer questions from Exercises 4.11 and 4.12 pages 155-156. Do not use the computer to find answers to these problems. Submit using Moodle. (10 points) |
30 | |||||||||
Week 4
|
Chapter 5 Control
Statement: Part 2 for do..while, switch, break, continue, Logical Operators |
Total Sales Program Exercise 5.14 page 204. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapter 5 and do the Self-Review Exercises. Answer questions from Exercise 5.4 page 202. Submit using Moodle. (10 points) |
30 | |||||||||
Week 5
|
Chapter 6 Functions
and Recursion Scope, Math Library, Passing parameters, Function Prototypes, Random numbers, Call stack |
Parking Program Exercise 6.12 page 273. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapter 6 and do the Self-Review Exercises. Answer questions from Exercise 6.11 page 272. Submit using Moodle. (10 points) |
30 | |||||||||
Week 6
|
Chapter 7 Arrays
and Vectors for-statement, passing arrays, multidimensional arrays, command-line args |
Airline Reservation Program Exercise 7.20 page 337. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapter 7 and do the Self-Review Exercises. Answer Exercises 7.6 through 7.9 pages 334-335. Submit using Moodle. (10 points) |
30 | |||||||||
Week 7
|
Chapter-8 Pointers
|
Tortoise and Hare Exercise 8.12 pages 384-385. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (30 points) |
Read Chapter 8 and do the Self-Review Exercises. Answer questions from Exercises 8.7 through 8.11 pages 383-384. Submit using Moodle. (10 points) |
40 | |||||||||
Week 8
|
Chapter 3 Intro to
Classes and Objects Objects, Methods and Parameters |
Invoice Program Exercise 3.13 page 107. Copy the class code, the test application and a screen-shot showing the results of your program execution into a Word document and submit using Moodle. (10 points) |
Read Chapter 3 and do the Self-Review Exercises. Answer questions from Exercises 3.5 through 3.10 page 107. Submit using Moodle. (10 points) |
20 | |||||||||
Week
9
|
Chapter 9 Classes and Objects Chapter 10 Classes Part 2 |
Rational Number Program Exercise 9.6 page 427. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapters 9 and 10. Do the Self-Review Exercises. Answer the question from Exercises 9.3 page 426. Submit using Moodle. (5 points) |
25 | |||||||||
Week 10
|
Chapter 12 Inheritance base and derived classes, constructors w/ inheritance |
Savings Account Program Exercise 10.7 page 463. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapter 12 and do the Self-Review Exercises. Answer questions from Exercises 10.3 though 10.5 pages 462-463. Submit using Moodle. (10 points) |
30 | |||||||||
Week
11
|
Chapter 11 Operator
Overloading
|
Complex Number Program Exercise 11.8 pages 514-516. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapter 11 and do the Self-Review Exercises. Answer question from Exercises 11.6 page 514. Submit using Moodle. (5 points) |
25 | |||||||||
Week
12
|
SPRING BREAK |
SPRING BREAK
Apr 18 - Apr 24 |
SPRING BREAK
Apr 18 - Apr 24 |
||||||||||
Week
13
|
Chapter 13 Polymorphism |
Package Shipping Program Exercise 12.9 page 570. Copy the code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapter 13 and do the Self-Review Exercises. Answer questions from Exercises 13.3 through 13.8 page 624. Submit using Moodle. (10 points) |
30 | |||||||||
Week
14
|
Chapter 16 Exception
Handling Chapter 14 Templates
|
Polymorphic Package Shipping Program Exercise 13.15 page 624. Copy the code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapters 16 and 14. Do the Self-Review Exercises. Answer questions from Exercises 16.18 through 16.22 page 711. Submit using Moodle. (10 points) |
10 | |||||||||
Week
15
|
Chapter 15 Stream
I/O
|
Point Class Exercise 15.15 page 682. Copy the class code, the test application, and a screen-shot showing your program execution into a Word document and submit using Moodle. (20 points) |
Read Chapter 15 and do the Self-Review Exercises. Answer questions from Exercise 15.6 page 681. Submit using Moodle. (10 points) |
30 | |||||||||
Week 16
|
Chapter 17 File Processing sequential access files, random access files |
File Matching Program Exercise 17.7 page 750-751. Copy the code and a screen-shot showing your program execution into a Word document and submit using Moodle. Do not copy the output file into the Word document. (40 points) |
Read Chapter 17 and do the Self-Review Exercises. Answer questions from Exercise 17.5 and 17.6 page 750. Submit using Moodle. (10 points) |
50 | |||||||||
Week
17
|
Chapter 18 Strings FINAL EXAM |
FINAL EXAM (80 points) |
Read Chapter 18 and do the Self-Review Exercises. Answer questions from Exercises 18.4 through 18.6 page 779. Submit using Moodle. (10 points) |
90 | |||||||||
| TOTAL POINTS | 390 | 150 | 540 |
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||