Parkland College
2400 West Bradley Avenue, Champaign, Illinois 61821
Csc 123, Programming in C  
Spring 2004
Class Notes:

All grades are posted and the semester is finished.  You can see your grade on the Parkland Connection.  Have a nice summer! 

I found a good C and C++ libraries reference at C and C++ Libraries Reference.  The URL for future reference is www.cppreference.com  I've added it to the Reference section below.  Also, by looking at this reference, I finally found the solution to the cin flush the input buffer problem.  It is:

cin.ignore(256);  

(use a #define MAXLINE 256 to get rid of the magic number)

Syllabus: Syllabus
Help! Coordinated Office Hours and Help
Lab Times: CSIT Department Open Lab Times
Free software: CSIT - Microsoft Academic Alliance
Reference: C and C++ Libraries Reference (clearly written web version)
  string class operators and functions Reference (Scott's version)
   
Final Points: 100
Points  Task
4   MiniTest -- Expressions
6   MiniTest -- Functions
12   Full Test (entire class period) on Selection and Repetition
16   Project 1, graded using the Project 1 Grade Sheet  -- Start with      project1C.cpp or project1C++.cpp
10   Full Test (entire class period): Files and one dimensional arrays or
  Make up test (about two hours): Files and two dimensional arrays
           Makeup test answer:  Matrix.h     Matrix.cpp
20   Project 2 due, graded using the Project 2 Grade Sheet
10   Full Test (entire class period): pass by reference, structs and arrays of structs
12   Final Exam
10   Free to everyone just to make the total come out to 100
Grade Scale
Grade  Points
   
A  90% of total
B  80% of total
C  70% of total
D  60% of total
F  below 60% of total
Projects:
Mon., Apr. 5 Project 1, graded using the Project 1 Grade Sheet -- Start with project1C.cpp or project1C++.cpp
Wed., Apr. 28 Project 2 due, graded using the Project 2 Grade Sheet
   
   
Tests:  
Mon., Jan 26 MiniTest -- Expressions
Mon., Feb 9 MiniTest -- Functions
Mon., Mar. 1 Full Test (entire class period) on Selection Practice Problems and Repetition Practice Problems
Wed., Mar. 17 Full Test (entire class period) on files and one dimensional arrays
Wed., Apr. 21 Full Test (entire class period) on pass by reference, structs, and arrays of structs 
Thurs., May 13
8:00 am to 10:00 am
Final: Note that this is not the normal class day or time.
Final Exam Study Guide
   
   
Reference:  
   
Daily Topics: The following schedule is tentative and may be modified as the semester progresses.
Mon., Jan. 12 The Microsoft Visual C++ Programming Environment
hello.cpp in class code
Wed., Jan. 14 Variables, Assignment, and Expressions I
expressions in class code
Mon., Jan. 19 Martin Luther King Holiday -- no class
Wed., Jan 21 Variables, Assignment, and Expressions II
expressions practice in class code
Mon., Jan 26 Functions -- start
functions.h   functions.cpp

MiniTest -- Expressions (from 12:00 to 12:20)
Wed., Jan. 28 Functions -- completion
functionpractice.h   functionpractice.cpp
Strings -- strings in class code
Mon., Feb. 2 Selection (if statements) -- start  Selection Practice Problems
if statements in class code
Wed., Feb. 4 Function example and review - introduction to Top Down Design
Mon.,  Feb. 9 Selection (if statements) -- completion  Selection Practice Problems
Selection10.cpp   Selection18.cpp  Selection24.cpp  Selection28.cpp
MiniTest -- Functions (from 11:50 to 12:20)
Wed., Feb. 11 Repetition (while statements) -- start  Repetition Practice Problems
Mon., Feb. 16 Repetition (while statements) -- completion  Repetition Practice Problems
switch in class code  while loop in class code
Wed., Feb. 18 Practice with if and switch statements, and loops -- doing some of the assigned Selection Practice Problems and Repetition Practice Problems
Repetition12 .h   Repetition12 .cpp    Repetition17.h  Repetition17.cpp
Mon., Feb. 23 Practice with if and switch statements, and loops -- doing some of the assigned Selection Practice Problems and Repetition Practice Problems
Repetition19 .h   Repetition19 .cpp    Repetition22.h  Repetition22.cpp
Repetition23 .h   Repetition23 .cpp    Repetition28.h  Repetition28.cpp
Repetition30 .h   Repetition30 .cpp
Wed., Feb. 25 Files
files.h files.cpp
Mon., Mar. 1 Full Test (entire class period) on Selection Practice Problems and Repetition Practice Problems
Wed., Mar. 3 Files (conclusion: C++ file input)
files.h files.cpp

Arrays -- One Dimensional
arraypractice.h arraypractice.cpp
Mon., Mar. 8 Project 1 Discussion -- Start with project1C.cpp or project1C++.cpp
Arrays -- Parameters, Searching, and Sorting

arrayparameters.h  arrayparameters.cpp  selectionsort.h  selectionsort.cpp
Wed., Mar. 10 bubblesort.h  bubblesort.cpp
Strings and string functions
strings.h  strings.cpp
Mon., Mar. 15 Arrays -- Two Dimensional
array2D.h  array2D.cpp   stringarray.h  stringarray.cpp
Wed., Mar. 17 Full Test (entire class period): Files and one dimensional arrays
Sat., Mar. 20 to Sun.,  Mar. 28   Spring Recess and Spring Holiday
Mon., Mar. 29 Pointers and Pointer Arithmetic
pointers.h   pointers.cpp   
Wed., Mar. 31 Pass by reference
passbyreference.h   passbyreference.cpp
Mon. Apr. 5 structs
Project 2 explanation and discussion, with starting code.  Graded using the Project 2 Grade Sheet

structs&startofProject2.h  structs&startofProject2.cpp
Wed., Apr. 7 Project 1 due, graded using the Project 1 Grade Sheet
Mon., Apr. 12 Make up test (about two hours): Files and two dimensional arrays.
Makeup test answer:  Matrix.h     Matrix.cpp
Wed., Apr. 14 arrays of structs
arrayofstructs.h    arrayofstructs.cpp
Mon., Apr. 19 In depth: operators and  parameter passing of arrays and structs 
Wed., Apr. 21 Test (entire class period): pass by reference, structs, and arrays of structs 
Mon., Apr. 26 Top Down Design
topdowndesign.h   topdowndesign.cpp
Wed., Apr. 28 Project 2 due, graded using the Project 2 Grade Sheet
Mon., May 3 Function analysis
Review for the Final using the Final Exam Study Guide
Wed. May 5  Final grading period.  No projects will be graded or updated after 4:00 Thursday. 
Thurs., May 13
8:00 am to 10:00 am
Final: Note that this is not the normal class day or time (Note: Ack --  what an awful time.  If Scott does not show up, don't leave!  Send someone to the CSIT department office and have them call his home phone.  He lives just across Bradley Ave.  He will show up soon, probably looking awful, but hopefully coherent enough to pass out the tests and able to answer moderately difficult questions.  Please do not ask him "What is the meaning of life?" at that hour, however.  You might not like the answer.)
Final Exam Study Guide
  Scott Badman  Office:  B132  Phone:  353-2250  sbadman@parkland.edu  

Parkland College, 2400 W. Bradley Avenue, Champaign, IL 61821