Computer Science 240

Introduction to C/C++

Instructor:      Daniel Thureen

Office:             GR 219
Phone:             299-3376
E-Mail:            thureen@cord.edu
Hours:             1:20 – 2:30 MWF
Other times by appointment or discovery

Purpose:         This course provides an introduction to C/C++ programming for students who have already learned Java language. Programs in Java and C++ share a superficial resemblance to each other, but beneath the surface there lies a myriad of practical and philosophical differences.

Text:               C++ For Java Programmers by Timothy Budd
Addison Wesley, 1999    ISBN: 0-201-61246-1

Tentative Schedule:

Date

Topic

Reading
Click link for Power Point slides

3/5

Java vs C/C++ Philosophical Differences

Chapter 1

3/7

Basic Data Types

Chapter 2

3/12

Pointer and References

Chapter 3

3/14

Memory Management

Chapter 4

3/19

Class Definition

Chapter 5

3/21

Input/Output

Chapter 10

4/26

Exam 1

4/2

Polymorphism

Chapter 6

4/4

Operator Overloading

Chapter 7

4/9

Characters and Strings

Chapter 8

4/11

Templates and Containers

Chapter 9

4/16

Exception Handling

Chapter 11

4/18

Features found only in C/C++

Chapter 12

4/23

Features found only in Java

Chapter 13

5/2

Exam 2 – Thursday 5/2 – 11AM

 

Assignments

At the end of each chapter is an extensive list of questions and problems. Regular daily work will consist of a selection from this list, similar ones of my own, or programming projects.

 

Course Evaluation

There will be 2 Exams during the semester (see detailed Schedule below for dates) which will be worth approximately 50% of the grade. The rest will be based upon daily work. Each assignment is due at the beginning of the class period indicated on the assignment. Grades will be assigned based upon the following scale:

Percentage

Grade

Percentage

Grade

94-100

A

73-77

C

90-94

A-

70-73

C-

87-90

B+

67-70

D+

83-87

B

63-67

D

80-83

B-

60-63

D-

77-80

C+

< 60

F

 


At the end of each chapter is an extensive list of questions and problems.  Regular daily work will consist of a selection from this list, or similar ones of my own. These are not meant to be a team effort but your own individual work. There will also be a number of programming projects and/or lab sessions. These may be done in teams of 2 or 3.

Exams                                                 - 200 points
Daily assignments & projects              - 200 points total

In order to allow a bit of flexibility, each student will be given 10 days of “free grace” for the course which may be applied to the assignments as desired. After these grace days are used up any late work will be docked 10% for each school day late. All grace expires the first day of final exams.

 

The exams will be given only at the time specified on the schedule. Exceptions can be made in case of real emergencies but must be arranged and approved in advance.

It is expected that all work done for this class will be your own work. Sharing ideas is encouraged but copying problems or programs is a form of plagiarism and will result in a zero for that assignment and possible disciplinary action by the college.