Ficha 02 · C avançado + C++
Exercício 1 · malloc + free
Cria função int *criar_array(int n) que aloca dinamicamente um array de n inteiros e preenche-o com 0, 1, 2, ..., n-1. No main, cria array de 10, imprime, e liberta.
Resposta:
Exercício 2 · Ler ficheiro
Cria um ficheiro numeros.txt com 5 inteiros (um por linha). Lê-o e imprime a soma.
Resposta:
Exercício 3 · Escrever ficheiro CSV
Cria array de structs Produto {nome, preco} com 3 produtos, e grava-os em produtos.csv no formato CSV.
Resposta:
Exercício 4 · Linked list (struct + pointers)
Implementa uma lista ligada simples:
struct Node { int valor; struct Node *next; }.- Função
inserir_inicio(Node **head, int valor). - Função
imprimir(Node *head). - Função
libertar(Node *head). - Insere 5 valores e imprime.
Resposta:
Exercício 5 · Calculadora CLI
Cria uma calculadora com menu:
-
- Somar
-
- Subtrair
-
- Multiplicar
-
- Dividir
-
- Sair
Loop até user escolher 0. Trata divisão por zero.
Resposta:
Exercício 6 · C++ Hello
Cria hello.cpp em C++. Pede nome ao utilizador usando cin e string, e responde com cout.
Resposta:
Exercício 7 · Classe C++
Cria classe Carro com atributos privados marca, modelo, velocidade (começa em 0). Construtor recebe marca + modelo. Métodos:
acelerar(int): aumenta velocidade.travar(int): diminui (mínimo 0).info(): imprime estado actual.
Demonstra no main.
Resposta:
Exercício 8 · vector + algoritmos C++
Em C++, cria vector<int> com 10 números aleatórios. Usa STL para:
- Ordenar.
- Calcular soma.
- Encontrar máximo.
- Imprimir.
Resposta: