Computer Science I
CS23021 Sections 3 and 4

Fall 2009, TU 11:00am-12:15pm
room: MSB 228

instructor: Mikhail Nesterenko
office:MSB 356
office hours:TU 12:30-2:00pm
phone:(330) 672-9101
email:mikhail AT cs.kent.edu
.
lab instructor:Manas Hardas
office:MSB 255
office hours:MW 10:00-10:45am
labs:MW 11:00am-12:55pm
email:mhardas AT cs.kent.edu

tutor:Xiaoxi Du
lab:MSB 162
tutoring hours:MWF 8-11am
email:xdu AT cs.kent.edu

Textbook: Problem Solving With C++ by Walter J. Savitch, Addison-Wesley, 2008, Seventh Edition, ISBN: 0321531345

syllabus, tentative schedule grades lab site, final exam study topics

Mailing list: list info, archive

Slides and Examples
topic examples book chapter
introduction, history of C++, C++ program outline 1.1-1.3
first program, development environment hello world, area 1.3-1.4
variables, identifiers, assignment, input/output 2.1-2.2
types, expressions, more on assignment 2.3
boolean algebra, boolean and relational operators, branching constructs if, switch 2.4, 3.1-3.2
iterative constructs: while, do-while, for while for 2.4, 3.3-3.4
programming style, comments, naming programs
predefined functions (library functions)
doghouse, equation, time and random 2.5, 4.2
programmer-defined functions, local and global variables, call-by-value add1, lawoffice, windchill 4.3,4.5
design, design examples, debugging functions buying pizza 4.1, 4.4, 5.3, 5.4
separate files, independent compilation, header files, using Make and GDB with separate files add1, celsius2fahrenheit 12.1
void-functions and call-by-reference void-functions, call-by-reference 5.1, 5.2
defining arrays, arrays with for-loops, passing arrays as arguments, projects with arrays and functions, constant arrays as parameters, searching and sorting arrays using arrays, plants, searching and sorting 7.1-7.2
strings strings 8.1,8.2
structures, file input/ouput structs i/o 10.1, 6.1
classes classes 10.2
abstract data types implementations of bank account: one two 10.3
friend functions, operator overloading friends, overloading: Bach, US currency 11.1
arrays of objects, objects of arrays basic examples, bank statement day schedule 1 day schedule 2 11.3
pointers pointer usage 9.1
new and delete operations, dynamic memory, dynamic objects, automatic code documentation dynamic memory dynamic objects documentation 11.2,11.3
vectors vectors 8.3, 18.1
lists lists 13.1
class and function templates basic, insertion-sort, linked-list 17.1-17.2
inheritance inheritance 15.1,15.2
standard template library, virtual functions stl examples, using virtual functions 18.1,18.2,15.3
exception handling exceptions 16.1,16.2
representing program structure with diagrams OMT, UML
recursion recursion 14.1
bitwise operations, bit fields bit manipulation bit manipulation