Cod: 21090
Department: DCET
Scientific area: Computer Engineering
Total working hours: 156
Total contact time: 26

This course unit studies a structured procedural programming language: the C language. It will provide students the necessary programming foundations and methods to advance to more complex and evolved programming languages.

  1. Programming
  2. C Language
  3. Algorithms

• Identify the main concepts in order to apply them in other programming languages.
• Make small programs in a procedural programming language.
• Develop Data Structures and Algorithms for small problems.

• Variables, conditionals and cicles;
• Functions, vectors, procedures and recursion;
• Memory, structures and files.

  • Coelho, José - Conceitos e exercícios de programação, utilizando Linguagem C". Lisboa: Universidade Aberta, 2010 (Repositório Aberto:
  • Online versions:
    • VPL (virtual programming language): Atividades 1 / Atividades 2 / Atividades 3, 2021
    • HTML, EPUB, MOBI, PDF, revisão 2012


Continuous assessment is privileged: 2 or 3 digital written documents (e-folios) during the semester (40%) and a presence-based final exam (p-folio) in the end of the semester (60%). In due time, students can alternatively choose to perform one final presence-based exam (100%).

Pre-requisites: none.