AUSTIN COMMUNITY COLLEGE

DEPARTMENT OF COMPUTER STUDIES AND ADVANCED TECHNOLOGY

 

Course Syllabus:

COSC 1320—Introduction to C++

35728– Summer, 2009

 

 

Instructor: Ron Bass

Office Telephone: 223-3180

Office: RGC 217

 

Office Hours:

Tues 5-6 pm

Thurs 11-6 pm

E-mail: rbass@austincc.edu

Home page: www.austincc.edu/RonBass

 

 

Course Description:

Introduction to the C++ programming language and its subset, the C programming language. Program structure, blocks, storage types, console and file I/O, functions, arrays, strings, pointers, call-by-reference, call-by-value, and dynamic memory allocation will be studied.  The concept and coding of classes will be introduced. The differences between C++ and C will also be covered.

 

Pre-requisite:

COSC 1315 or department approval...

 

Approved Course Text:

Starting Out with C++ Early Objects, 6th Edition, Gaddis, Walters, Muganda, Addison Wesley, 2006. (ISBN 0-321-51238-3)

 

Instructional Methodology:

The course has both lab and lecture sessions on each class day.

 

Course Rationale:

This course is designed to teach students the C++ programming language and introductory and intermediate programming concepts with examples and applications using the C++ language. The course builds and extends topics covered in the prerequisite course, COSC 1315 and prepares students for more advanced programming courses such as ITSE 2431 (Advanced C++ Programming) and COSC 2415 (Data Structures) as well as for entry level programming employment. The course is required for an Associate Degree in several Computer Information Systems and Computer Science degree areas


Course Objectives/Learning Outcomes:

Students will be exposed to the following concepts and/or skills at an Introductory concepts level:

The analysis and design of programs based on requirements and performance considerations; evaluation of various possible technical solutions; object-oriented design considerations; system integration; program documentation; program debugging procedures; developing program testing plans; consideration of program operating environment; use of reusable software; during the course each student will

 

1.      learn C/C++ Language programming concepts and techniques;

2.      develop the ability to logically plan and develop programs using top-down design;

3.      learn to use object oriented programming and design.

4.      learn to write, test, and debug programs using C/C++ .

 

 

Grade Policy:

Grade will be based both on concepts and practical application. Examinations, written and lab assignments will be used to determine the student’s grade. Numerical scores on exams and assignments will be combined and the resulting score will provide a letter grade based on the following scale.

 

Grade Scale:

Percentage

Grade

90 – 100

A

80 – 89

B

70 – 79

C

60 – 69

D

0   – 59

F

 

 

Course/Class Policies:

Academic Integrity

A student is expected to complete his or her own projects and tests. Students are responsible for observing the policy on academic integrity described in the Current ACC Student Handbook, under “Student Discipline Policy, Section C”.

“Acts prohibited by the college for which discipline may be administered include scholastic dishonesty, including but not limited to cheating on an exam or quiz, plagiarizing, and unauthorized collaboration with another in preparing outside work. Academic work submitted by students shall be the result of their own thought, research or self-expression. Academic work is defined as, but not limited to tests, quizzes, whether taken electronically or on paper; projects, either individual or group; classroom presentations, and homework”.  The penalty accessed will be in accordance with the current ACC Student Handbook policy. See http://www.austincc.edu/handbook/policies4.htm for more information.


Incomplete

A student may receive a temporary grade of “I” (Incomplete) at the end of the semester only if ALL of the following conditions are satisfied:

1.      The student is unable to complete the course during the semester due to circumstances beyond their control.

2.      The student must have earned at least half of the grade points needed for a “C” by the end of the semester.

3.      The request for the grade must be made in person at the instructor’s office and necessary documents completed.

4.      To remove an “I”, the student must complete the course by two weeks before the end of the following semester. Failure to do so will result in the grade automatically reverting to an “F”.

 

Freedom of Expression Policy

It is expected that faculty and students will respect the views of others when expressed in classroom discussions.

 

Attendance / Withdrawal Policy

Students are expected to attend classes and will be held responsible for all material covered in class. Regular attendance helps ensure satisfactory progress towards completion of the course.  It is the student’s responsibility to complete a Withdrawal Form in the Admissions Office if they wish to withdraw from this class. The instructor may withdraw students from this class if their absences exceed 10% of the total number of class meetings. The last date to withdraw for this semester is shown in the course schedule. It is not the responsibility of the instructor to withdraw the students from their class even though the instructor has the prerogative to do so under the above listed circumstances.  ALERT:  A new state law for new students states that there can be  No more than six course withdrawals throughout your undergraduate education, regardless of how many colleges you attend.  Students who entered college before fall 2007 are not affected.  Ask a counselor for details.

Students with Disabilities Policy:

“Each ACC campus offers support services for students with documented physical or psychological disabilities. Students with disabilities must request reasonable accommodations through the Office for Students with Disabilities on the campus where they expect to take the majority of their classes. Students are encouraged to make this request three weeks before the start of the semester. (Refer to the Current ACC Student Handbook)”

 

Course Topics - COSC 1320

 

Course introduction, C++ program structure, compiling, running, compilation/execution. Overview of C/C++ programming, basic standard input/output, file input and output

Fundamentals Review: Keywords, variables, constants, statements, operators, expressions, C++ Boolean expressions; branching: if/else, switch, repetition (while and for loops)

Pointers

Functions (structured programming using functions), transfer of control and data, function arguments, function prototypes. Passing by copy, and by reference; default arguments, an introduction to pointers, passing by pointers, blocks, scope, static/auto variables

Arrays, array bounds, generic and array pointers, array pointers as function arguments,

Two-dimensional arrays (rectangular arrays and arrays of pointers to arrays). Constant strings, string arrays, string manipulations, string pointer manipulations

Arrays of strings

An introduction to classes and objects. Private and public data and functions. Constructors, Destructors. A discussion of Object-Oriented Technology. The string class.

An introduction to dynamic storage allocation

 

 

Scans Competencies:

 

Text Box: SCANS Coding Legend
1 – Concept
2 – Application
3 - Advanced

 

C1

Time: Selects goal-relevant activities, ranks them, allocates time, and prepares and follows schedules.

1

C8

Uses computers to process information.

2

C19

Applies Technology to Task: Understands overall intent and proper procedures for setup and operation of equipment.

2

 

 

 

F3

Arithmetic: Performs basic computations; uses basic numerical concepts such as whole numbers, etc.

2

F5

Listening: Receives, attends to, interprets, and responds to verbal messages and other cues.

1

F9

Problem Solving: Recognizes problems and devises and implements plan of action.

2

 

 

Specific Course Section (33022) Information:

Section Specific Requirements:

1.      complete 12 programming assignments;

2.      complete the 3 exam reviews in preparation for the examinations

3.      complete 3 examinations;

4.      seek assistance and ask questions about programming assignments, exam reviews or textbook material from the instructor as necessary;

 


Section Specific Assignments:

12 programming assignments are required to complete the course. They are progressive; beginning at an intermediate level of difficulty and becoming more complex by semester's end. Programs must produce output before they are considered complete. Programs are to be completed as part of the preparation for the exams. Each program will have an assigned due date. Late programs (those submitted after the due date) are penalized 20%. Programs may not be submitted after the date of the exam for which they are preparatory. The first 4 programs are preparation for exam 1. The next four programs are preparation for exam 2. Finally, the last four programs are preparation for exam 3. Program problem statements are to be found at the end of each chapter. A list of the programming assignments for this course is included on a separate handout.

During the semester, the instructor will give five special assignments. Students must be present when they are distributed to be eligible to complete them. These assignments are designed to emphasize the specific elements of the current topic of study.

Exam reviews are to be completed before the scheduled exam review session. The review for the exam will be discussed during the class periods leading up to the exam. However, on the class day before the examination, specific discussion of the review will be led by the instructor. Programs are submitted as hard copy with appropriate hard copies of sample runs. All programs must be complete, correct and on schedule to receive full credit.

The course grade will be an average of the 3 exams, 5 special assignments, and the 12 programs as shown below. Each examination will cover about 1/3 of the material taught in the course. Each examination is scheduled on the course schedule for a specific date. There are no make-up exams. If you are unable to take an exam on a scheduled date, you must make arrangements with your instructor to take it in advance at the ACC testing center at Northridge campus.

 

Section Grading:

12 Programs @ 2 percent each

5 Special Assignments @ 2 percent each

3 Exams @ 22 percent each
Total = 100 percent

 

Section Schedule (9-week session)

Week

Chapter

Topics

1

1-5

Review of C++ Fundamentals

2

6

Functions

3

7

Intro. to Classes and Objects

3

 

Exam 1

4-5

8-9

Arrays

6

10

Pointers

6

 

Exam 2

7

11

Adv. Classes and Objects

   8

12

Chars, Cstrings, & Strings

9

13

Advanced File  and I/O

9

 

Exam 3

 

 The exams and programming assignments* due dates for the Summer Semester (2009) are:

 

Prog. #

Due

From Textbook*

Date

Problem # 5th/6th

Pages 5th/6th

1

6/04

7 / 13

387/376

2

6/9

1&2 / 1&2

471/463

3

6/11

6 / 7

473/465

4

6/16

10/ 12

474/467

EXAM 1

6/18

 

5

6/23

12 / 13

563-564/554-555

6

6/30

2&3 / 2&3

604/594-595

7

7/02

1&2 / 1&2

655/649

8

7/7

7 / 7

656/650

EXAM 2

    7/9

 

9

   7/16

2&3 / 2&3

757/740

10

7/21

7 / 7

758-759/741

11

7/23

10 / 13

819/801-802

12

7/28

11 / 11

886/867

EXAM 3

7/30

 

 

* Note:  This table reflects the assignment # and page numbers for both the 5th and 6th editions of the textbook.