CSC 161 Grinnell College Fall, 2013
Imperative Problem Solving and Data Structures

CSC 161 Module 0: Getting Started with Linux, C, and the Scribbler 2

Summary and Main Topics

This module introduces CSC161 students to the basics of Linux, C programming, and the Scribbler robots, including:

  1. basic Linux
  2. introduction to using the terminal window;
  3. elements of a C program, including variables and primitive types;
  4. editing, compiling, linking, and running a program; and
  5. basic Scribbler actions (beeping and motion).

Day-by-day Details

Day Topic Preparation In-class Due Date Availability
Friday, August 30 Problem-solving Process
Module 0: Linux Introduction
Monday, September 2 Linux Basics lab exercise    
Tuesday, September 3 Files in Linux lab exercise    
Wednesday, September 4 File Permissions in Linux lab exercise
Discussion: overivew of C
Friday, September 6 Introduction to C
  • Elements of a program
  • Variables and arithmetic expressions
  • Variable names
  • Data types and sizes
  • Constants
lab exercise    
Monday, September 9 Using the Scribbler 2 Robot lab exercise    
Tuesday, September 10 Project   Program a Song Due: Friday, September 13  

Project: Program a Song

Working in pairs, students should develop a program that causes the Scribbler 2 robot to play a song or melody that extends at least 30 seconds. Students should also write a description of their program, compile the program, and run it. Creativity in identifying a song or melody is encoauraged. Songs which have been used in examples or labs may not be used.

Project Submission

Submission of your project should come in two parts:


This project, as well as any labs or supplemental problems due later in the semester, is due at the start of class.

Note: If you email the project code or print the program after you arrive in class, there is a good chance that your work will be considered late and subject to the late penalty.

Exceptions to the deadline policy and its penalties: