CSC 112 - Programming Fundamentals
Course objectives
The objectives of a programming fundamentals course are to introduce students to the fundamental concepts of programming and to develop their problem-solving skills. Students learn the syntax and vocabulary of a programming language, and how to apply algorithms and good programming practices to develop software.
Course learning outcomes (CLOs)
CLO: 1. Understand basic problem solving steps and logic constructs [C2]
CLO: 2. Apply basic programing concepts [C3]
CLO: 3. Design algorithms to solve complex problems using structures and functions [C5]
Course Outline
Introduction to problem solving, a brief review of Von-Neumann architecture, Introduction to programming, role of compiler and linker, introduction to algorithms, basic data types and variables, input/output constructs, arithmetic, comparison and logical operators, conditional statements and execution flow for conditional statements, repetitive statements and execution flow for repetitive statements, lists and their memory organization, multi-dimensional lists, introduction to modular programming, function definition and calling, stack rolling and unrolling, designing algorithms, string and string operations, pointers/references, static and dynamic memory allocation, File I/O operations.