Practice Problems
If you want some extra practice in addition to the problem set for a week, you can choose from these practice problems. Note that,in many cases, the exercises can be harder than the problem sets themselves!
Week 1
These problems assume that you have already set up your CS50 Codespace. Be sure to complete that before attempting these problems.
- Debug, for becoming familiar with C syntax and debugging programs.
 - Half, for practice creating a function.
 - Prime, for practice using 
forloops. 
Week 2
- Hours, for practice with arrays, passing arrays as parameters to a function, integer division and type casting.
 - N0 V0w3ls, for practice with 
strings, command-line arguments, and writing an entire program from scratch. - Password, for practice iterating through a 
string, using thectype.hlibrary, and using Boolean variables. 
Week 3
- Recursive 
atoi, for practice creating recursive functions. - Average Temperatures, for practice working with 
structs and sorting algorithms. - Max, for practice passing arrays to functions and finding maximum values.
 - Snackbar, for practice using 
structs and writing a linear search algorithm. 
Week 4
- Bottom Up, for practice working with images and metadata.
 - License, for practice working with files and file pointers.
 
Week 5
- Trie, for introducing more complex data structures and working with tries.
 
Week 6
- Bank, from CS50’s Introduction to Programming with Python, for practice with 
strs. - Frank, Ian and Glen’s Letters, from CS50’s Introduction to Programming with Python, for practice with libraries and command-line arguments.
 - Jar, from CS50’s Introduction to Programming with Python, for an introduction to classes and object-oriented programming, if feeling more comfortable.
 - Seven Day Average, for practice with requests, 
dicts, and data, if feeling more comfortable. - Taqueria, from CS50’s Introduction to Programming with Python, for practice with 
dicts andtry-exceptblocks. 
Week 7
- Favorites for practice using 
SELECTandUPDATEkeywords. - Hall of Prophecy for practice refactoring a database, using 
CREATE. 
Week 8
- Radio Shack Redo, for practice with Bootstrap (and some web development history!)
 
Week 9
- Hello, Flask, for practice writing a Flask application from scratch.