Introduction to Computer Science
a first programming course featuring C# and Mono
Andrew N. Harrington
George K. Thiruvathukal
Loyola University Chicago
Department of Computer Science
Chicago, Illinois, USA
Available in PDF [http://books.cs.luc.edu/introcs-csharp/download/comp170.pdf] or EPUB [http://books.cs.luc.edu/introcs-csharp/download/comp170.epub].
- 1. Context
- 2. C# Data and Operations
- 2.1. A Sample C# Program
- 2.2. Lab: Editing, Compiling, and Running with Xamarin Studio
- 2.3. Arithmetic
- 2.4. Variables and Assignment
- 2.5. Syntax Template Typography
- 2.6. Strings, Part I
- 2.7. Writing to the Console
- 2.8. C# Program Structure
- 2.9. Combining Input and Output
- 2.10. String Special Cases
- 2.11. Substitutions in Console.WriteLine
- 2.12. Value Types and Conversions
- 2.13. Learning to Solve Problems
- 2.14. Lab: Division Sentences
- 2.15. Chapter Review Questions
- 3. Defining Functions of your Own
- 3.1. A First Function Definition
- 3.2. Multiple Function Definitions
- 3.3. Function Parameters
- 3.4. Multiple Function Parameters
- 3.5. Returned Function Values
- 3.6. Two Roles: Writer and Consumer of Functions
- 3.7. Local Scope
- 3.8. Static Variables
- 3.9. Not using Return Values
- 3.10. Library Classes
- 3.11. Static Function Summary
- 3.12. Chapter Review Questions
- 4. Basic String Operations
- 5. Decisions
- 6. While Loops
- 7. Foreach Loops
- 8. For Loops
- 9. Files, Paths, and Directories
- 10. Arrays
- 11. Lists
- 12. Dictionaries
- 13. Classes and Object-Oriented Programming
- 14. Testing
- 15. Interfaces
- 16. Recursion
- 17. Data Structures
- 18. Appendix
- 18.1. Development Tools
- 18.2. Xamarin Studio
- 18.3. Command Line Introduction
- 18.4. Precedence of Operators
- 18.5. Homework: Grade Calculation
- 18.6. Homework: Grade Calculation from Individual Scores
- 18.7. Homework: Grade File
- 18.8. Homework: Book List
- 18.9. Group Project
- 18.10. Lab: Version Control
- 18.11. Mercurial and Teamwork
- 18.12. Acknowledgments