COMS 113: Introduction to C

CS113: Introduction to C

Spring Semester 2004

Key data points

Instructor: Hubie Chen (hubes+cs113@cs.cornell.edu)
Office: Upson 4156
Office "hours": By appointment.
When: January 26 - February 20 MWF 12:20 - 1:10p
Where: PH 407
Grading: S/U only.

News
Lecture Notes & Schedule
Homework 0 - due ASAP!
Homework 1 - due Friday, January 30
Homework 2 - due Friday, February 6
Homework 3 - due Friday, February 13
Homework 4 - due Friday, February 20

Course Content

The goal of this course is to teach the fundamentals of the C programming language. By the end of this course, a student should have sufficient mastery so that details of the language not discussed in the class can be learned independently by reading a book (e.g. Kernighan/Ritchie). In addition, by the end of the course students should feel comfortable writing simple C programs, and have working experience with all major C features.

I will assume that you have taken CS100 or an equivalent thereof.

Please do not take this class if you do not anticipate attending every lecture and being able to turn in every assignment on time. Attendance is mandatory. There will be (unannounced) quizzes in this class.

All auditors are welcome.

Compiler

In this course, you may use any compiler which compiles ANSI C code. Here are instructions to help you get started writing a C program using CodeWarrior on a PC (version 8):
  1. Load the CodeWarrior IDE.
  2. Select File:New.
  3. Select "Win32 C Stationery" under Project, enter a project name, and then click OK.
  4. Select Win32 WinSIOUX App, and click OK.
  5. Click on the plus to the left of "Source", and then double-click on main.c.
  6. Now you're cooking. Edit main.c to your heart's content. To run or debug your program, click on the green arrows in the project window, or alternatively select Project:Run or Project:Debug. Don't forget to save your file periodically.
Here's a guide to CodeWarrior; note that it was written for Macintosh users, and so some parts may be Macintosh specific.

Collaboration

You may discuss your work with classmates on a high level but the work you turn in must be your own. For starters, you should understand everything that you turn in. If you have any questions about this policy, please come talk to me. The Cornell University Code of Academic Integrity provides more details on these issues.

Useful and/or fun links, possibly related to C

The Int'l Obfuscated C Contest, decidedly not representative of the model of style you should pursue while taking this class
Yahoo's C Page
Stanford CS Education Library
Towers of Hanoi on the web