This is a self-paced introdution to the IC dialect of the C programming
language used in Elec 201
at Rice University. This tutorial is derived from an experiemental
tutorial in C syntax developed by by Brian
Stuart at Rhodes College for
his class Introduction
to Computer Science. The original tutorial (which makes use
of flex and gcc to produce cgi scripts) can be obtained by clicking
here. Because cgi scripts are often problematic on Win32 platforms,
these scripts were eliminated in the Rice version.
Note: Within the tutorial sections there
are presently NO links back to the ELEC 201 home page, or to the Course
Notes page, so you may want to bookmark those before you proceed.
- Part 1: Some C Basics
- Part 1-1: Your First IC Program
- Part 1-2: The main function of C
- Part 1-3: A program without output doesn't
- Part 1-4: Identifying C
- Part 1-5: Making Varibles Work for You
- Part 1-6: Passing Computed Values on to the
- Part 1-7: Bringing Information into C Programs
- Part 1-8: Just a Comment on C
- Part 2: Functions
- Part 2-1: C Functionality
- Part 2-2: Functions on Call
- Part 2-3: The Formality of Functions
- Part 2-4: The Scope of C Variables
- Part 2-5: Seeing into the Future
- Part 2-6: Mathematical C
- Part 2-7: Sifting through Layers of C
- Part 2-8: A First Programming Assignment
- Part 3: Conditional Statements
- Part 3-1: Going with the Flow
- Part 3-2: The Fork in the Road
- Part 3-3: Expressing Good Condition
- Part 3-4: This is a Short Circuit
- Part 3-5: A Multitude of Options
- Part 3-6: Playing with Blocks
- Part 4: Looping Structures
- Part 4-1: "Play it Again Sam"
- Part 4-2: All the While
- Part 4-3: Do Be Do Be Do
- Part 4-4: For Me?
- Part 4-5: The Middle Ground
- Part 4-6: "Carry on My Wayward Son"
- Part 4-7: What an Idiom
- Part 5: Arrays
- Part 5-1: Getting Your Ducks in a Row
- Part 5-2: The Nth Dimension
- Part 5-3: Where is it?
- Part 5-4: Stringing Letters Together
- Part 5-5: Stringing Words Together
- Part 5-6: Functional Arrays
- Part 5-7: Picking it Apart
- Part 5-8: A Second Programming Assignment
- Part 6: Pointers
- Part 6-1: "Don't Point That Thing at
- Part 6-2: Pointing the Way
- Part 6-3: The Value of Pointers
- Part 6-4: What's the Point?
- Part 6-5: The Point of Arrays
- Part 6-6: Pointing Outside of Yourself
- Part 6-7: Pointers 1-2-3
- Part 6-8: The Point of Strings
- Part 7: Recursion
- Part 7-1: Recursion is Recursion
- Part 7-2: How Can You Call Yourself?
- Part 7-3: A String is a String
- Part 7-4: When Will the World End?
- Part 7-5: A List is a List
- Part 7-6: Zen and the Art of Recursion