Programação

Conhecimentos de Base Recomendados

Conhecimentos básicos de programação em linguagem C.

Métodos de Ensino

A carga lectiva semanal é a seguinte:
– 2 horas teóricas utilizadas para apresentação de novos conceitos e componentes da linguagem C, complementados com a apresentação de exemples simples;
– 2 horas práticas em que os alunos têm a oportunidade de aplicar os conceitos aprendidos na resolução de problemas concretos.

Resultados de Aprendizagem

Nesta disciplina os alunos adquirem conhecimentos complementares que lhes permitem conceber e desenvolver programas completos em linguagem C. Uma visão abrangente que permita explorar todas as capacidades da linguagem C é essencial para o desenvolvimento de programas que resolvam problemas do mundo real.
Ao longo da disciplina é dada especial importância à manipulação de ficheiros e gestão dinâmica de memória. Os alunos adquirem ainda capacidade para conceber e implementar programas que utilizem estruturas de dados fundamentais, como filas, pilhas, listas e árvores binárias.

Programa

1. Ponteiros
1.1. Noções básicas sobre ponteiros e endereços
1.2. Ponteiros e funções: ponteiros como argumento e ponteiros como valor devolvido
1.3. Ponteiros e arrays
1.4. Aritmética de ponteiros

2. Ficheiros de cabeçalho
2.1. Divisão de um programa em vários ficheiros de código
2.2. Utilização de ficheiros de cabeçalho

3. Estruturas
3.1. Noções básicas sobre estruturas
3.2. Definição de tipos: typedef
3.3. Arrays de estruturas
3.4. Unions
3.5. Tipos definidos por enumeração

4. Ficheiros
4.1. Tipos de ficheiros: ficheiros binários e ficheiros de texto
4.2. Operações básicas sobre ficheiros
4.3. Acesso não sequencial a ficheiros

5. Estruturas Dinâmicas
5.1. Alocação dinâmica de memória
5.2. Tipos básicos de estruturas dinâmicas: listas ligadas
5.3. Outros tipos de estruturas dinâmicas

6. Recursividade
6.1. Noções básicas sobre recursividade
6.2. Exemplos de funções recursivas
6.3. Árvores binárias

Docente(s) responsável(eis)

Estágio(s)

NAO