CGS 3408
Intro To C Programming
Summer 2006 Syllabus
Instructor Information
Position |
Name |
E-mail |
Office |
Office hours |
Course Instructor |
Bob Myers |
myers@cs.fsu.edu |
Love 205-A |
MW 1:50 - 3:20 PM |
TA / Grader |
Zubin Lalani |
lalani@cs.fsu.edu |
MCH 114 |
M 9:20 - 10:50 AM, T 2:00 - 3:30 PM (updated) |
TA / Grader |
Wayne Liu |
liu@cs.fsu.edu |
LOV 267 |
T 9:15 - 10:45 AM, R 2:00 - 3:30 PM |
Class Schedule
Lecture
MW 12:30 - 1:45 PM LOV 101
Recitation
Section |
Room |
Day |
Time |
Instructor |
5 |
MCH 304 |
Tues |
11:00 AM - 12:15 PM |
TBA |
6 |
MCH 304 |
Tues |
12:30 - 1:45 PM |
TBA |
Course Requirements:
Prerequisite Course
- All students taking CGS 3408 are required to have previously
taken and passed (C- or higher final grade) MAC 1140, or MAC 2311 or MAC
2233.
If you have not completed this requirement (one of these
courses, or its equivalent) the CS department will drop you from CGS 3408
automatically.
Course Website:
Textbook:
- C: How To Program, Deitel & Deitel, 4th ed.
Course Objectives:
A student who has completed this course with a passing grade should be
able to:
-
Demonstrate a basic understanding of fundamental computer science
concepts, including software and hardware
-
Solve computing problems using a top-down approach in a well-structured
design using procedural programming techniques
- Design, implement, test, and debug a C program to solve a given
problem
- Demonstrate knowledge and use of control structures used in procedural
programming, including sequence, selection, iteration, and functions.
- Make use of data types and structures in C, including integer and
floating point types, arrays (one-dimensional, two-dimensional, strings)
and structs, arrays of structs, and structs containing arrays.
- Utilize algorithms studied to perform common tasks, such as finding
the max and min of a data set, counting, summing, tracking a previous
value, searching and sorting, reading until EOF, etc.
- Consider, compare, and evaluate code segments or simple algorithms for
relative efficiency in a basic fashion
- Time permitting, be able to understand and recognize the basics of
recursion
Grading Policy:
The final course grade will be computed as follows:
Programs / Assignments |
30 % |
Test 1 |
20 % |
Test 2 |
20 % |
Final Exam |
30 % |
In addition to the scale listed above, in order to earn a C- or better
in the course, a student is required to achieve a test average of
C- or better. If the test average is below this level, the highest
possible course grade is a D. The test average can be computed with
the following formula:
TestAvg = ((Test1 * 20) + (Test2 * 20) + (FinalExam *
30)) / 70
Letter Grade Scale:
Letter | Numerical Average |
A | 92.00 - 100 |
A- | 90.00 - 91.99 |
B+ | 88.00 - 89.99 |
B | 82.00 - 87.99 |
B- | 80.00 - 81.99 |
C+ | 78.00 - 79.99 |
C | 72.00 - 77.99 |
C- | 68.00 - 71.99 |
D | 62.00 - 67.99 |
D- | 60.00 - 61.99 |
F | 0.00 - 59.99 |
Tests:
There will be three tests -- two term tests and a final exam.
On-campus students will be required to bring and show your Student ID on
test days. The final exam will be cumulative.
Test Dates: (Test 1 and 2 tentative)
Test 1 |
Wed, June 7 |
Test 2 |
Mon, July 10 |
Final Exam |
Wed, Aug 2 |
Recitation / Quizzes
Periodic quizzes may be given, in lecture or in recitation class, to help
students gauge their progress in the class, and to gauge attendance, if
needed. No makeup quizzes will be given (no exceptions). Attendance and
participation is expected, both in lecture and recitation class. There
may also be some hand-in exercises done in recitation class. Any
attendance grades, quiz grades, or graded work from recitation will
count in the assignment average.
Programming Assignments
- There will be a variety of homeworks and programming projects
assigned. Earlier assignments will likely be smaller and easy to
complete in a shorter amount of time. Later assignments in the course
will increase in level and difficulty. Assignment specifications will be
posted on the web page.
- Turn in all assignments on time! Late assignments
will be accepted one day after the due date, with the deduction of a
letter grade (10%). Assignments more than a day late will not be
accepted.
- Compiling -- Programs that do not compile are very tedious to
grade, and they show a lack of testing, which is a large part of
programming. There will be an automatic 5% point penalty for each compile
error in a student's code that has to be fixed in the grading process.
(This means that program submissions with compile errors will likely earn
very little, if any, credit). Make sure your code compiles before you
submit it!!!
- A few words of advice:
- The most common reason for not doing well on programming assignments
is waiting too late to start. You will be given plenty of time to
complete each project, but if you wait until the last day or two to start,
you may not be able to finish. Plan to do some work on the project early,
every day if possible. Try to finish a few days early -- as many
unexpected problems arise during programming, especially when debugging.
In addition, if you are using a machine in a computer lab, you may have to
wait for an available one. PLAN for these things to happen, and allow
ample time to meet course deadlines.
- BACKUP your work. In fact, it's a good idea to keep copies on your CS
account and on a home computer. Keep an untouched copy of your
completed assignment on your CS account -- if any unexpected problems
arise with program submission, you may need to produce a backup copy
Web References:
The course web page is your friend -- check it frequently! It will be
continually updated with essential course materials, such as assignments,
examples, and notes outlines. It will also include other helpful
supplements, such as instructions for using the compilers, a FAQ
(Frequently Asked Questions) page, suggested exercises, and other useful
help materials. It is your responsibility to check the web page often for
posted materials.
Miscellaneous Policies:
- A student will be allowed to make up a missed test if he or she has
a notice of illness from the Student Heath Center or family physician.
Any other excuses that are not medical or emergency related will be at
the discretion of the instructor, and must be approved at least a week in
advance.
- Students in the class should have a computer account from the Computer
Science Department (sign up for one if you don't already have one), and
this can and should be used to store project files and access one of the
compilers used in the course.
- Please turn OFF all cellular phones, beepers, etc. in the classroom.
Academic Honor Code:
It it your responsibility to read, understand, and conform to the
Academic Honor Code
as set forth in the FSU General Bulletin and the Student
Handbook. In addition to this information, please be aware of the
following:
- Students are expected to do their own work on any classwork or
test submitted for a grade (unless designated as a group assignment).
- It is NOT appropriate to work on assignments with other students or
to give or receive solutions to or from anyone before an assignment
is due and handed in (by all parties).
- Discussing solutions and techniques on assignments with other
students after the assignment has been graded and handed back
is okay, and encouraged.
- When you turn in work with your name on it, you are representing that
work as your own. If your submission matches that of
another student, this is considered a violation of the
Academic Honor Code.
- If a group project is given, then names of all group
members would appear on the single program submission. This is
appropriate
- Examples found in the course textbook
may be used in programs, as long as the source is cited. This is
appropriate, as some hand-in assignments may be based on program examples
found in the book or contain other code that is provided to you in the
assignment specification
- A first violation of the honor code will result, at minimum
(but not limited to), a penalty of a 0 grade on the assignment
or test involved, along with a reduced letter grade in the course.
- Any second violation of the honor code will result in an automatic F
in the course, and possible proceedings before the Honor Court.
Accommodation of Disabilities:
Students with disabilities needing needing special
accommodations should register with and provide documentation to the
Student Disability Resource
Center (SDRC), and they should bring a letter from the SDRC to the instructor
indicating what accommodations are needed. Any notice of special
accommodations should be given at least a week in advance.
Students taking exams at the SDRC office are expected to take exams
at the regularly scheduled time. Any exception to this will only
be granted with a valid documented reason and must be approved by the instructor
a week before the exam.