TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

UM VETOR EM UMA FUNÇÃO UTILIZANDO ARITMÉTICA DE PONTEIROS?

Por:   •  27/6/2020  •  Trabalho acadêmico  •  451 Palavras (2 Páginas)  •  233 Visualizações

Página 1 de 2

um vetor em uma função utilizando aritmética de ponteiros?

Bom para isso acontecer, é preciso criar uma variável qualquer na função principal (main) dizendo o tamanho da mesma. Logo após, cria o vetor, para passar um vetor para a função,  colocar só o nome do vetor chamado da main e variável do tamanho, mas lá no paramentro tem que colocar o nome do vetor com os [], ou seja, diz que o paramentro e um vetor e só ler um vetor em uma função usando aritmética de ponteiros, para isto, basta colocar o nome do vetor e colocar o sinal do operador (+).

Exemplo:

Int v[2];

Int i;

For(i=0; i<3;i++){

Scanf(“%d”, v+i);

Como imprimir os valores de um vetor utilizando aritmética de ponteiros?

Utilizamos só a aritmética para ler, ou seja, nós não usamos o “*”, quando usamos o asterisco queremos dizer para o computador que quero acessar o conteúdo que está armazenado naquela variável que o ponteiro está acessando;

Exemplo:

Int v[2];

Int i;

For(i=0; i<2; i++){

Scanf(“%d”, v+i);

}

For(i=0; i<2; i++){

Printf(“%d”, *(v+i));

No primeiro for, ele está acessando as posições do vetor, já no segundo for ele está acessando o conteúdo do vetor.

O que ocorre quando se incrementa um ponteiro?

Para incrementar um vetor do ponteiro resultante tem que apontar para dentro da área reservada para o vetor. Se “P” representa um ponteiro para um inteiro, p+1 representa um ponteiro para o próximo valor armazenando na memória, isto é, o vetor de P é incrementado de 4 (mais uma vez assumindo que um inteiro tem 4 bytes).

O que são e como funciona os vetores de ponteiros?

Os vetores de ponteiros, eles podem armazenar outros vetores dentro de um vetor utilizando o operador “*”.

O tipo do vetor e um ponteiro para o tipo do elemento do vetor, por exemplo: int v*[2], nesse caso o tipo de v é int *.

sendo assim como V represente um endereço de memória, se quisermos armazenar o valor de V em outra variável, esta deve ser declarado como ponteiro para inteiro, por exemplo:

Int main(){

 Int v1[3];      //aqui como pode ver, declaramos 2 vetores do tipo inteiro.

int v2[3];

 int *v[2]; // aqui tem um ponteiro de vetor, esse vetor é o que armazena os dois vetores anteriores

 v[0] = v1; // já aqui declaramos a posição dos vetores armazenados, ou seja, ai está dizendo

v[1] = v2; que o v1 vai ser armazenados na posição inicial do vetor V e o vetor v2 vai ser armazenado na segunda posição V.

 

Exercício pratico:

#include

int main(){

printf("digite as 3 notas dos tres alunos: \n");

int i;

float a[3];

float b[3];

float c[3];

float *v[3];

v[0] = a;

v[1] = b;

v[2] = c;

for(i=0;i<3;i++){

 scanf("%f %f %f", &v[i][0],&v[i][1],&v[i][2]);

}

float media;

for(i=0;i<3;i++){

 media = ((v[i][0] * 2) + (v[i][1] * 3) + (v[i][2] * 5))/10;

printf("MEDIA = %.1f\n", media);

}

return 0;

}

...

Baixar como (para membros premium)  txt (2.8 Kb)   pdf (28.3 Kb)   docx (7.7 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com