Go to:
Logótipo
You are in:: Start > CCINF1002

Programming II

Code: CCINF1002     Acronym: CCINF1002

Keywords
Classification Keyword
OFICIAL Computing and Information Sciences

Instance: 2024/2025 - 2S Ícone do Moodle

Active? Yes
Web Page: https://www.dcc.fc.up.pt/~pribeiro/aulas/pii2425
Responsible unit: Department of Computer Science
Course/CS Responsible: Bachelor in Engineering Physics

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
L:EF 79 study plan from 2021/22 1 - 3 24 81

Teaching Staff - Responsibilities

Teacher Responsibility
Pedro Manuel Pinto Ribeiro

Teaching - Hours

Theoretical classes: 0,92
Laboratory Practice: 0,92
Type Teacher Classes Hour
Theoretical classes Totals 1 0,923
Pedro Manuel Pinto Ribeiro 0,923
Laboratory Practice Totals 3 2,769
Alberto José Rajão Barbosa 1,846
Pedro Manuel Pinto Ribeiro 0,923

Teaching language

Suitable for English-speaking students

Objectives

The aim is to complement previous knowledge of programming in an interpreted language (Python) with specific training in programming in a compiled, low-level language (C).

Emphasis will be placed on practical problem-solving with a focus on notions of algorithms, modularity, structured programming and code quality.

Learning outcomes and competences

At the end of this course, students should be able to:

  • use the syntax and semantics of the fundamental components of the C language;

  • write, test and execute programmes to solve simple problems from an informal specification;

  • implement some elementary algorithms in C;

  • know the concept of pointer and use it to process indexed variables and character strings;

  • know and use functions from the standard C language libraries;

  • have basic skills in writing structured, correct and efficient code.

Working method

Presencial

Program

Introduction to the C language. Characteristics of the language: advantages, disadvantages and care when using it.

C language fundamentals. Syntactic structure of programs. Directives, declarations, expressions. Compilation and execution.

Basic types (integers, floating point, characters). Flow control. Cycles. Function definition. Formatted input and output.

Notions of pointers. Indexed variables. Character strings. Structured types.

Elementary algorithms (counting, searching, sorting, numerical algorithms).

Recursion. Solving simple problems using iterative and recursive algorithms.

Incremental development. Error detection and correction. Notions of efficiency and correctness.

Mandatory literature

K. N. King; C programming. ISBN: 0-393-96945-2

Complementary Bibliography

Brian W. Kernighan; The C programming language. ISBN: 0-13-110163-3
Jon Bentley; Programming pearls. ISBN: 9780201657883

Teaching methods and learning activities

Theoretical-practical lectures, with interactive analysis and discussion of problems and programs.

Practical classes to solve exercises on the computer, using development tools and an automatic evaluation system.

Software

Mooshak - A system for automatic evaluation of code
GCC - GNU C Compiler

Evaluation Type

Distributed evaluation without final exam

Assessment Components

designation Weight (%)
Teste 40,00
Exame 50,00
Trabalho laboratorial 10,00
Total: 100,00

Amount of time allocated to each course unit

designation Time (hours)
Estudo autónomo 32,00
Frequência das aulas 24,00
Trabalho laboratorial 25,00
Total: 81,00

Eligibility for exams

Attendance to at least 50% of the practical classes.

Calculation formula of final grade

The final grade is obtained taking into account the following components:


  • A: grading of the exercises submitted to the automatic assessment system during the lessons;

  • T: practical test at the end of the 6 weeks of classes;

  • E: final written exam.


The final grade (F) is determined by F = A*0.1 + T*0.4 + E*0.5

Note: There is no minimum mark in any component. Students will be allowed one chance to improve the practical test before the exam period.

Classification improvement

Students can improve the final exam mark in accordance with the general regulations.
Recommend this page Top
Copyright 1996-2025 © Faculdade de Ciências da Universidade do Porto  I Terms and Conditions  I Acessibility  I Index A-Z  I Guest Book
Page created on: 2025-06-12 at 15:20:57 | Acceptable Use Policy | Data Protection Policy | Complaint Portal