CSCI N305 :: C Programming

Department of Computer and Information Science
Indiana University - Purdue University - Indianapolis

 

Section 27736, Distributed Education (DE)

| syllabus | calendar | streaming media | grades | resources | contact instructors |

This calendar is subject to revision during the course of the semester.

 

Class Calendar for Spring 2008

Date

Topic

Preparation

(due on date assigned)

Projects

(listed on date to be started)

Homework

(listed on date to be started)

Tuesday, 01.08.2008

Syllabus

Important: Clickto play lectures

Watch: General Information
Watch: Orientation

Read: Setting up SSH

Read: Unix Primer

Read: Unix Basics
Read:
Emacs Tutorial
Read: Emacs Cheat Sheet
Read:
Emacs Ref Card
Read: Email FAQ

 

 

Thursday, 01.10.2008

Introduction to Computers

Watch: Hardware (1a)

Read: Deitel Ch 1 (PPT)

Try: How to compile your first program under Microsoft Visual Studio, or

Try: How to compile your first program under Linux

 

 

Computer Science in the Real World

 

DUE: 05.03.2008

Tuesday, 01.15.2008

Introduction to Computers

Watch: Languages (1b)

Watch: The Machine That Changed the World
Read:
Virginia Tech TMTCTW
Read:
IEEE History of Computing

   

Thursday, 01.17.2008

Introduction to C Programming

Watch: A First C Program (2a)
Watch: Mixing Data Types (2b)
Read: Deitel Ch 2 (PPT)
 

Homework 1: Chapters 1 and 2
 

DUE: 01.29.2008

Tuesday, 01.22.2008

C Formatted Input/Output Watch: Basic I/O Printf (3a)
Watch: Basic I/O Scanf (3b)

Read: Deitel Ch 9 (PPT)

Project 1: Change Maker

Blackbelt Project 1

DUE: 02.01.2008

 

Thursday, 01.24.2008

Variable Declarations, Data Types, Expressions Watch: Variables & Operators (4a)
Watch: Assignments (4b)

 

 
Tuesday, 01.29.2008

Structured Program Development and Program Control

Watch: Problem Solving using STAIR (5a)
Watch: Algorithms (5b)
Read: Deitel Ch 3 (
PPT)
Read: Deitel Ch 4 (PPT)

Project 2: Find-A-Bank

Blackbelt Project 2

DUE: 02.12.2008

Homework 2: Chapter 4 Program Control
 

DUE: 02.12.2008

Thursday, 01.31.2008

Structured Program Development and Program Control

Watch: Standard C Statements (5c)    
Tuesday, 02.05.2008 Structured Program Development and Program Control

Watch: Add'l C Statements (5d)

   
Thursday, 02.07.2008

EXAM 1 (via oncourse, no lecture this day)

 

 

 

Tuesday, 02.12.2008

Functions

Watch: Declarations (6a)
Watch: Examples (6b)
Read: Numerical Representations
Read: Deitel Ch 5 (PPT)

Project 3: Math Calculator

Blackbelt Project 3

DUE: 02.22.2008

 

Homework 3: Chapter 5 Functions
 

DUE: 02.19.2008

Thursday, 02.14.2008 Functions

Watch: Scope, Parameter Passing, Storage Specifiers (6c)

Watch: Recursion (6d)

   
Tuesday, 02.19.2008

Information Representation: Number Systems: Positive

Watch: Integers (7)
Read: Deitel Appendix D.

 

Homework 4: Appendix D Number Systems
 

DUE: 02.29.2008

Thursday, 02.21.2008

Information Representation: Number Systems

Watch: Negative Integers (8a)

Project 4: Function Lab

Blackbelt Project 4 

DUE: 03.07.2008

 
Tuesday, 02.26.2008

Information Representation

Watch: Floating Point (8b)    
Thursday, 02.28.2008

Information Representation

Watch: Characters and Images (9)  

 

Tuesday, 03.04.2008

EXAM 2 (via oncourse, no lecture this day)

 

 

 

Thursday, 03.06.2008 Information Representation Watch: Machine Instructions (10a)
Watch: xComputer Demonstration (10b)

Project 5: xComputer

Blackbelt Project 5

DUE: 03.21.2008

Resource: xComputer Applet
xComputer OpCodes

 

Tuesday, 03.11.2008 Spring Break (no classes this week)      
Thursday, 03.13.2008 Spring Break (no classes this week)      
Tuesday, 03.18.2008

Arrays

Watch: Declarations (11a)

Watch: Strings and Parameter Passing (11b)
Read: Deitel Ch 6 (PPT)

 

 

Thursday, 03.20.2008 Arrays

Watch: Multidimensional Arrays (11c)

Watch: Case Study (11d)

Project 6: Trip Driving Distance

Blackbelt Project 6
 

DUE: 04.04.2008

 
Tuesday, 03.25.2008

Pointers

Watch: Introduction (13a)

Watch: Call-by-Reference (13b)
Read: Deitel Ch 7(PPT)

   
Thursday, 03.27.2008

Pointers

Watch: Pointer Arithmetic (13c)    
Tuesday, 04.01.2008 EXAM 3 (via oncourse, no lecture this day)      
Thursday, 04.03.2008 Characters and Strings Watch: Literals and Variables (14a)
Watch: Functions (14b)

Read: Deitel Ch 8 (PPT)
Project 7: Name Game

Blackbelt Project 7

DUE: 04.18.2008

Homework 5: Chapter 6 Arrays amd Chapter 8 Strings
 

DUE: 04.16.2008

Tuesday, 04.08.2008 Structures Declarations (15a)
Functions and Arrays (15b)

Read: Deitel Ch 10 (PPT)
   
Thursday, 04.10.2008 File Processing Read: Deitel Ch 11 (PPT)  

 

Tuesday, 04.15.2008

Ethics

Discussion Topics:

Course Evaluation

Watch: Ethics in Computer Science (12)
 

Ethics Prereading: (with emphasis on sections 2 and 3)

1.  Ethics Quiz
2.  Hacking
3.  Computer Ethics
4.  Privacy
5.  Snooper Bowl
6.  Whistle blowing
7.  Piracy  

Optional materials:  Not included in lecture:

 

Employment Outlook

Review from Data Structures
Sample Make File
Data Structures
Make 

 
Thursday, 04.17.2008 Project Work Day      
Tuesday, 04.22.2008 Project Work Day      
Thursday, 04.24.2008 Project Work Day      
Tuesday, 04.29.2008

EXAM 4 (via oncourse, no lecture this day)

   

 

Friday, 05.02.2008     Final Project and CSIRW Paper Due, uploaded into Drop Box, by 11:55 PM.  

 

Lecture Instructor: Dale Roberts (droberts@cs.iupui.edu), (317) 278-9045 (office), (317) 431-4997 (mobile)

Lab Instructors: Newlyn Erratt (nerratt@iupui.edu)

 

01/15/2008 08:44 PM

 

© Department of Computer and Information Science
Indiana University-Purdue University-Indianapolis