wpe41.gif (23084 bytes)CIS3355: Business Data Structures
Fall, 2008

Bits/Bytes & ASCII
Basic C/C++ Operations
Program Controls
Numeric Arrays/Strings

Programming Assignments

[Home Page] [Web Navigation] [(In)FAQs] [Class Schedule] [Textbook] [Lecture Slides] [Additional Coverage] [Supplementary Material] [Evaluation Areas] [Course Submissions] [Student Information]

Unlike regular assignments, programs WILL be graded.

Part of this course’s objective is to introduce the student to C/C++ programming and lay the foundations for the Object-Oriented (C++) course which follows. However, we have a lot of conceptual material to cover, so after the first few assignments, there will be very little discussion of the assignments in class (I will always be available outside of class to assist you with the assignments).

There may be up to 10 programming assignments (depending on time; I'm shooting for 5) (See course Schedule for Due Dates). This essentially means that once we get started with the programming assignments, you will be expected to constantly be working on a program.

The tentative assignments include:




1 Bits/Bytes and ASCII:
A very simple assignment to familiarize you with the C/C++ programming language and to illustrate how bits/bytes and ASCII are actually used.
Bits and Bytes
Basic Data Types
RAM Allocation
2 Basic Operations in C/C++:
An introduction to if statements and basic numeric operations in C/C++
C/C++ Operations
Basic Data Types
RAM Allocation
3 Functions
An extension of the previous program using Functions
4 Program Controls
An extension of the previous program using while statements
C/C++ Operations
Basic Data Types
While Statements

Numeric and Character Arrays:
The simplest of user-constructed data types
manipulation of character arrays
Use of while and for statements
Use of functions

Numeric Arrays
Character Arrays
RAM Allocation
Abstract Data Types

User Defined Data Structures:
The Struct datatype

Structured Data Objects

Searching & Sorting:
Sequential and Binary Searches;
Simple sort algorithms

Searching and Sorting
8 Linked Lists
Displaying a list (array) without having to sort it.
Linked List
9 Linked Lists and Pointers
As above, but using Pointers

Dynamic Memory Allocation and Binary Trees:
As above but without arrays and using a binary tree structure

Dynamic Memory Allocation
Binary Trees

Each Assignment has multiple parts, generally starting with nothing more than simply copying the basic code and then adding (increasingly complex) code to it. The assignment is broken-up into sections because they are intended as tutorials which guide you through the process of learning.

 CAVEAT: It is relatively simple to get another student’s code and modify it so that it looks like you did it. BEWARE

  1. This is called plagiarism, and is considered a Cardinal Academic Sin that can lead to an automatic ‘F’ or even expulsion. At very least, it will lead to a zero (0) for the assignment -- IF you are lucky (See the student handbook).
  2. I have been doing this for a long time, and am very good at identifying programs that have been copied. If I suspect that you have copied the program, the process is very simple: I send all copies (A student who gives a program to another student to copy is considered equally as guilty as the student who copies it) to the Dean of students, and let him or her deal with it. I am no longer involved. If you have rationales or excuses, you deal with him or her directly (i.e., please don’t try and explain it to me: Go directly to the Dean). The Dean’s decision is final.
  3. If you spend a lot of time modifying the copied program, you can probably get away with it. However, if you had spent the same amount of time in writing the program yourself, you probably could have completed the program. Why Bother???
  4. The Quizzes (which count for much more than the assignments) will include C/C++ programming exercises. If you complete the assignments on your own, you should have no problems with the questions. If you use someone else’s code you will probably have a lot of problems. Ask yourself: “Do I feel Lucky???”
  5. In the long run, you will not learn anything. If you later get a job that  requires even some programming, you are out of luck. You will not be able to copy from your co-workers. You will, however, probably be able to collect unemployment (Employers tend to much less forgiving).

Detailed Instructions can be found at the links on the left.

Check the Course schedule for the due dates.

All Programming Assignments will are to be submitted in hard copy (on paper). More on this later.

This page was last updated on 01/10/05.