Buscar

PPT Webinars1 estrutura

Prévia do material em texto

Estrutura de Dados
Prof. Thiago Muniz
Objetivos
Apresentar os conceitos de procedimentos e funções, suas vantagens e sua notação em C.
Motivação
Permitir o reaproveitamento do código já construído(por você ou por outros programadores);
Evitar que um trecho de código seja repetido várias vezes dentro de um mesmo programa;
Permitir a alteração de um trecho de código de uma forma mais rápida. Com o uso de uma função é preciso alterar apenas dentro da função que se deseja;
Evitar que os blocos do programa fiquem grandes demais e, por consequência, mais difíceis de entender;
Facilitar a leitura do programa fonte;
Separar o programa em partes(blocos) que possam ser logicamente compreendidos de forma isolada; 
Declaração de função
Antes de se poder utilizar uma função ou um procedimento, é necessário defini-lo (antes de usar a aparelhagem há que fabricá-la).  
A definição de uma função ou de um procedimento é constituída por um cabeçalho seguido por um corpo, que consiste num conjunto de instruções entre {}.  
No cabeçalho são indicados: o tipo do valor calculado (devolvido) por essa função, o nome da função e a lista dos parâmetros da função (tipo nome separados por vírgulas).  Isto é: 
tipo_de_devolução nome (lista_de_parâmetros) 
Declaração de função
No exemplo seguinte tem-se o cabeçalho de uma função que tem um parâmetro e calcula (devolve) um valor inteiro.  O nome dado a esta função é Fatorial. 
int fatorial(int n) 
Exemplo
Função que retorne o valor do fatorial de n: 
Int fatorial (int n){ 
    int f = 1 , i ; 
    for(i = 1 ; i <= n ; i++){
	 f = f * i;
 }
	 return(f);
} 
Depois de definidos, funções e/ou procedimentos podem ser utilizados em outros locais de um programa.  A utilização típica é invocar ou chamar a função para que ela seja executada.  A invocação da função pode ser feita como se segue: 
int n = 5;
int fat;
fat = fatorial(n);  
Ou
Printf(“fatorial = %d”, fatorial(n));
Ou
If(fatorial(n)>100)
Declaração de Procedimento
No cabeçalho são indicados: o nome da Procedimento e a lista dos parâmetros do procedimento (tipo nome separados por vírgulas).  Isto é: 
nome (lista_de_parâmetros) 
Exemplo
O Procedimento não retorna valor, logo o valor calculado deve ser exibido dentro do proprio procedimento.
Calcular o fatorial de de n: 
 fatorial (int n){ 
    int f = 1 , i ; 
    for( i = 1 ; i <= n ; i++){
	 f = f * i;
 }
	 printf(“o Fatorial de %d é: %d”, n , f );
} 
Depois de definidos, os procedimentos podem ser utilizados em outros locais de um programa.  A utilização típica é invocar ou chamar um procedimento para que ela seja executada.  A invocação do procedimento pode ser feita como se segue: 
int n = 5;
fatorial(n);  
Estrutura de Dados - Ponteiro
Ponteiros são variáveis cujos valores são endereços de memória. Uma variável de ponteiro é uma variável especialmente declarada para guardar um ponteiro para seu tipo especificado. Ponteiros têm 3 funções principais em C: 
Fornecer uma maneira rápida de referenciar elementos de um vetor;
Permitem a modificação de argumentos de funções: variáveis não globais e não locais a ela; 
Oportunizar o uso de alocação e desalocação de memória em tempo de execução conforme a necessidade do programa. 
Declraração - Ponteiro
A forma de declaração de uma variável ponteiro é: 
tipo *nome_variável 
Onde tipo é o tipo de variável apontada pela variável ponteiro. 
Exemplo: 
int *p; //p é um ponteiro de int 
Ou seja, p apontará para uma região de memória que armazena um valor inteiro.
Operadores - Ponteiro
O primeiro operador de ponteiro é o &. Ele é um operador unário que devolve o endereço na memória de seu operando.
 
O segundo operador é o *. Ele é um operador unário que devolve o valor da variável localizada no endereço que o segue. 
Vetores e Ponteiros
Em C, ponteiros e vetores estão intimamente relacionados. O nome de um vetor sem o índice é um ponteiro para o primeiro elemento do vetor.
Exemplo:
Vetores e Ponteiros
Em C, ponteiros e vetores estão intimamente relacionados. O nome de um vetor sem o índice é um ponteiro para o primeiro elemento do vetor.
Exemplo:
Ponteiros
Suponha que a, b e c são variáveis inteiras e veja um jeito de fazer  c = a+b:

Continue navegando