Introduction to Programming (Theory)

Module Information

Module Semester:
Module Part:
Sub-Module Code:
Hours per Week:
Workshop Hours per Week:
Module ECTS Credits:
Available to ERASMUS Students:
Module Staff:

Module Objective

The aim of this course is to provide a solid introduction to programming in C and an overview of the principles and constraints that affect the way in which C has been designed and is used.

Module Study Targets

Upon completion of the course, students will have:

  1. The ability to write, compile and debug programs in C language
  2. A good knowledge and understanding of programming using a structured language
  3. Knowledge and skills in using algorithms for general purpose programming
  4. Knowledge and skills in developing medium scale programming projects

Module Acquired Abilities

  • Search, analysis and synthesis of data and information, using programming tools
  • Adapting to new situations: Evaluation of simple programming proposals related to algorithms
  • Decision Making: Synthesis of techniques for solving a medium sized composite problem
  • Autonomous work: Knowledge of development tools and use of programming manuals
  • Teamwork: Ability for dialog and cooperation for the development of a programming project

Module Description


  1. Introduction to programming
  2. Data types, Variable, Operators, Expressions
  3. Input, output
  4. Flow control
  5. Decisions
  6. Loops
  7. Arrays
  8. Pointers and References
  9. Functions
  10. Functions, Scope and visibility
  11. Advanced use of functions
  12. Functions and arrays, Recursive functions
  13. Advanced programs and applications

Module Student Evaluation

Written examination: 60%

Laboratory examination: 40%

Project presentation of up to 20%, towards the written examination


  • C. Sedgewick, Algorithms in C, 1998, Addison-Wesley
  • Kernighan, Ritchie, 1988, The C Programming Language, 2nd Edition, Prentice Hall
  • S. Prata, C Primer Plus (Developer's Library), 2013, 6th Edition, Addison-Wesley Professional
  • Y.H. Lu, 2015, Intermediate C Programming, CRC Press
  • C Style and Coding Standards,

Module Links