COMP 3001 - C++ Programming I
This course provides an introduction to programming in C++, using a procedural style. Topics covered include:
- Introduction to programming languages
- From source to binary, compilation, assembling, linking
- Data types and arithmetic operations
- Program input and output
- Floating point types and operations
- Logical operators and conditional expressions
- Iterative constructs (loops with conditionals)
- Functions and argument passing
- Nested loops and recursion
- References and pointers (pass by reference)
- Memory allocation - the stack and the heap
- Arrays and lists, C strings
- Structures and basic classes
- File based input/output
- Intro to debugging programs
Course learning objectives
After completing this course, successful students will be able to:
- Take a concrete programming problem statement and translate it into a program to solve the problem.
- Create a source file from scratch, compile it, and execute it.
- Separate logical components of a program into discrete functions that are fungible and reusable.
- Identify and implement program constructs to concisely solve the problem (loops, logical operations and arithmetic).
- Know how to allocate and de-allocate computer memory programmatically, and where that memory is stored.
- Use correct types for variables and comprehend their different representations.
- Utilize built-in types for storing data items (e.g., C-style arrays and lists)
- Build simple data structures (structs and classes) for organizing more complex variables.
- Be able to read and write input and output to and from a program, either using user input (stdin/stdout) or files.