Você está visualizando atualmente Alocação dinâmica

Alocação dinâmica

A lista a seguir contém exercícios sobre alocação dinâmica de dados que podem ser resolvidos em qualquer linguagem de programação que suporte ao recurso. Recomendamos que seja feito em C ou C++, que são linguagens bem difundidas, acessíveis e com ferramentas gratuitas para usar.

Antes de começar a resolver os exercícios sobre alocação dinâmica, certifique-se que seu ambiente está configurado corretamente. Use alguma IDE de programação como o DevCPP ou então o codeblocks.

Exercícios

1) Faça um programa que leia um valor n e crie dinamicamente um vetor de n elementos e passe esse vetor para uma função que vai ler os elementos desse vetor. Depois, no programa principal, o vetor preenchido deve ser impresso. Além disso, antes de finalizar o programa, deve-se liberar a área de memória alocada.  

2) Faça uma função que receba um valor n e crie dinamicamente um vetor de n elementos e retorne um ponteiro. Crie uma função que receba um ponteiro para um vetor e um valor n e imprima os n elementos desse vetor. Construa também uma função que receba um ponteiro para um vetor e libere esta área de memória. Ao final, crie uma função principal que leia um valor n e chame a função criada acima. Depois, a função principal deve ler os n elementos desse vetor. Então, a função principal deve chamar a função de impressão dos n elementos do vetor criado e, finalmente, liberar a memória alocada através da função criada para liberação.  

3) Construa um programa que aloque em tempo de execução (dinamicamente) uma matriz de ordem m x n (linha por coluna). A função deve receber como parâmetros m e n aloque uma matriz de ordem m x n e retorne um ponteiro para esta matriz alocada. Crie ainda uma função para liberar a área de memória alocada pela matriz. Finalmente, crie um novo programa (main) que teste/use as duas funções criadas acima.  

4) Criar um tipo abstrato de dados que represente uma pessoa, contendo nome, data de nascimento e CPF. Aloque dinamicamente uma variável desse novo TAD (no programa principal). Depois crie uma função que receba este ponteiro e preencha os dados da estrutura.  A seguir crie também uma uma função que receba este ponteiro e imprima os dados da estrutura. Finalmente, faça a chamada a esta função na função principal.

5) Criar um tipo abstrato de dados que represente uma pessoa, contendo nome, data de nascimento e CPF.
Crie uma variável que é um ponteiro para este TAD (no programa principal). Depois crie uma função que receba
este ponteiro e preencha os dados da estrutura e também uma uma função que receba este ponteiro e imprima os
dados da estrutura. Finalmente, faça a chamada a esta função na função principal.

6) Idem a questão 5, mas construa as funções usando referências (&).

Acesse as respostas no nosso GitHub

Vinicius dos Santos

Apenas um apaixonado por Ciência da Computação e a forma com que ela pode transformar vidas!

Deixe um comentário

dez + 11 =