Exercícios

Aula prática nº 6

Exercícios

  1. Realize uma função que escreve o caracter '#' um  determinado número de vezes no écran. O número de vezes que o caracter é escrito é igual ao número de vezes que a função já foi executada. Faça uma versão em que utiliza variáveis globais e outra em que utiliza variávies estáticas (de ficheiro).
  1. Considere a seguinte estrutura de dados
typedef struct node *link;
struct node {
  int val;
  link next;
};
    1. Concretize uma função iterativa que recebe uma lista de inteiros como argumento e escreve o seu conteúdo no écran.
    2. Faça uma função com a mesma funcionalidade da alínea anterior mas que utiliza uma solução recursiva.
    3. Concretize a seguinte funcao link convertArrayToList(int ar[], int size) que converte um vector de inteiros numa lista com o mesmo conteúdo.
    4. Realize a função inversa da alínea anterior, int *convertListToArray(link l, int *size).
    5. Realize uma função, link inverte(link l), que devolve uma nova lista, sem alterar a que recebe como argumento (l), que é a inversa de l, ou seja o primeiro elemento da nova lista é o último de l e assim sucessivamente. Faça uma segunda versão desta função em que se inverte a própria lista que recebe como argumento.
  1. Suponha que Noé queria manter um registo informático, utilizando um programa em C, de todos os animais que levava na sua arca.
  1. Defina um tipo, chamado Animal, para guardar a seguinte informação:
   nome - cadeia de caracteres com um maximo de 30 caracteres
   habitat - um dos valores terra, agua e ar
   peso - um float
  1. Escreva uma função que inicializa a informação respeitante aos animais guardados na arca. A função termina quando o utilizador indica um nome vazio. Suponha que não há limite relativamente ao números de animais que cabem na arca do Noé.
  2. Escreva uma função que recebe a informação respeitante a todos os animais guardados na arca e calcula o peso total dos animais.
  3. Escreva uma função que recebe a informação respeitante a todos os animais guardados na arca e calcula o animal mais pesado da arca.