CS 101: Schedule
This page lists the reading assignments, CloudCoder exercises, and recommended textbook exercises.
Make sure that you do the readings and CloudCoder exercises for each class before you come to class! Please note that the CloudCoder exercises are very important for learning the material.
- The CloudCoder exercises marked with an asterisk (*) are required: make sure you complete these before the class for which they are assigned. The exercises not marked with an asterisk are optional, but we strongly recommend that you do them.
- The CloudCoder exercises marked with a gold star () are challenge problems. They are harder than the normal CloudCoder exercises; completing them demonstrates significant mastery of the course topics. You should definitely try to complete these!
The textbook exercises are optional, but are a very good way to get extra practice.
Date | Readings/Topic | CloudCoder exercises | Textbook exercises |
---|---|---|---|
Feb 02 | How to succeed in CS 101 | — | — |
Feb 04 | Lecture 1: printf, scanf, int variables | Week2 → hello*, it goes to 11*, how many tacos?, What day is it? | 2.4, 2.5 |
Feb 09 | Lecture 2: More data types, expressions Chapter 3 through The Modulus Operator |
Week2 → hamster years *, F to C*, Mmmm, piece of candy!*, Cost of lunch, quarters | 3.6, 3.9 |
Feb 16 | Lecture 3: More about variables and expressions Chapter 3, Integer and Floating-Point Conversions to end of chapter |
Week3 → radius of circle *, divvy up the rice* | — |
Feb 18 | Lecture 4: Conditions and decisions Chapter 5 through Nested if Statements |
Week3 → Basic Double Coupon*, Simple Filter*, Restaurant check calculator*, Bank Balance*, make change | 5.2 |
Feb 23 | Conditions/decisions design activity | — | — |
Feb 25 | Lecture 5: If/else if/else statements, random numbers Chapter 5, The else if Construct |
Week4 → Triple Coupon*, member discount*, Complex Filter*, grading, Smallest of 3, happy birthday, Median of three | — |
Mar 02 | Exam 1 Review | Exam1Review → fleems, buy 3, get 1 free | |
Mar 04 | Exam 1 | ||
Mar 09 | Lecture 6: For loops, loop recipes Chapter 4, through The for Statement |
Week5 → bananana*, Eeeeeeek*, countdown*, keep doubling*, dice rolls | 4.2 |
Mar 11 | Lecture 7: While loops, coding style Chapter 4, The while Statement |
Week6 → Check Input*, squares*, day numbers* | 4.11 |
Mar 16 | Loops design activity | — | |
Mar 18 | Lecture 8: Nested loops, char data types Chapter 4, Nested for Loops |
Week8 → 111222333444*, multiplication table*, which and how many? | — |
Mar 23 | Combining loops and if/else | — | — |
Mar 25 | Working on Assignment 2 & Labs | ||
Mar 30 | Lecture 10: Arrays Chapter 6 through Initializing Arrays |
Week9 → Array Scanner*, Pair sums*, Exceeded Amount, weighted average, Not like the others | 6.4, 6.7 |
Apr 01 | Lecture 11: Multidimensional arrays Chapter 6, Multidimensional Arrays |
Week10 → tic-tac-toe check*, Magic Squares | — |
Apr 06 | Lecture 12: Functions, top-down design Chapter 7 through Automatic Variables |
Week10 → PrintSum*, Deep Thought*, Find Primes | — |
Apr 08 | Exam 2 Review | ||
Apr 13 | Exam 2 | ||
Apr 15 | Catch up day | — | — |
Apr 20 | Lecture 13: Functions that return a value Chapter 7 through Checking Function Arguments |
Week11 → SumBetween*, MaxOfThree*, feetToMeters*, inRange*, ContainersNeeded, WeeklyPay, diamond, check_if_armstrong | 7.7 |
Apr 22 | Lecture 14: Arrays and functions Chapter 7 through Multidimensional Variable-Length Arrays and Functions |
Week12 → ArraySum*, IsAscending*, countOdd*, Min Array Entry | — |
Apr 27 | Lecture 15: Pointers, reference parameters Chapter 10 through Using Pointers in Expressions |
Week13 → AddEmUp* | — |
Apr 29 | Lecture 16: Struct types Chapter 8, through Using Structures in Expressions Lecture 17: Using structs with functions Chapter 8, through Initializing Structures |
Week14 → find_midpoint* | — |
May 04 | Lecture 18: Pointers to structures Chapter 10, Working with Pointers and Structures Exam review |
Week14 → area of Rectangle*, quadrant* | — |
May 06 | Exam 3 |