SlideShare uma empresa Scribd logo
1 de 22
VETORES
Profª Ms. Engª Elaine Cecília Gatto
Curso de Bacharelado em Engenharia de Computação
Universidade do Sagrado CoraçãO – USC
Bauru/SP
ARRAYS
• São estruturas de dados que consistem em itens de dados
relacionados do mesmo tipo.
• Arrays e estruturas são entidades estáticas porque
permanecem do mesmo tamanho ao longo de toda a
execução do programa.
• Elas podem ser de uma classe de armazenamento automática
e, portanto, ser criadas e destruídas sempre que os blocos em
que estiverem definidas, forem iniciados e finalizados.
• Um array é um conjunto de espaços de memória que se
relacionam pelo fato de que todos têm o mesmo nome e o
mesmo tipo.
• Para se referir a um local ou elemento em particular no
array, especificamos o nome do array e o número da posição
do elemento em particular no array.
ARRAYS
Um array chamado c com
12 elementos
c[0] = elemento zerésimo
c[i-1] = iésimo elemento
c[índice] = índice pode ser
um número inteiro ou uma
expressão = c[i+2] ou
c[a+b]

Nome do array
[número da posição do
elemento dentro do array c]

Valores
armazenados

c[0]

-45

c[1]

6

c[2]

0

c[3]

72

c[4]

1543

c[5]

-89

c[6]

0

c[7]

62

c[8]

-3

c[9]

1

c[10]

6453

c[11]

78
ARRAYS
• É importante observar a diferença entre o SÉTIMO ELEMENTO
DO ARRAY e o ELEMENTO DE ARRAY SETE. Como os índice de
array começam em zero, o SÉTIMO ELEMENTO DO ARRAY tem
o índice 6, enquanto o ELEMENTO DE ARRAY SETE tem o
índice 7 e, na realidade, é o oitavo elemento do array.

• Os colchetes usados para delimitar o subscrito de um array
são realmente considerados como um operador na linguagem
C. Eles têm o mesmo nível de precedência do operador de
chamada de função – parênteses.
DECLARANDO ARRAYS
• Os arrays ocupam espaço na memória. Você especifica o tipo
de cada elemento e o número de elementos exigidos por array
de modo que o computador possa reservar a quantidade de
memória apropriada.
int c[12];
• Esta é a declaração usada para pedir ao computador que
reserve 12 elementos para o array de inteiros C.
int b[100], x[27];
• Esta declaração reserva 100 elementos para o array de inteiros
b e 27 elementos para o array de inteiros x.
Exemplos
//inicializando um array
#include <stdio.h>

O
exemplo
utiliza
estruturas
for
para
inicializar os elementos de
um array n de 10
elementos do tipo inteiro
com zeros e imprimir o
array em formato tabular.

//função main inicia a execução do programa
int main(void)
{
int n[10]; //n é um array de 10 inteiros
int i; //contador
//inicializa elementos do array n como zero
for(i=0; i<10; i++){
n[i]=0; //define elemento no local i como zero
} //fim do for
printf("%s %13s n ", "Elemento", "Valor");
//saída na tela de conteúdo do array n em formato tabular
for(i=0; i<10; i++){
printf("%7d %13d n", i, n[i]);
} //fim do for
system("PAUSE");
return 0; //indica conclusão bem sucedida
} //fim do main
Exemplos
//inicializando um array com uma lista de inicializadores
#include <stdio.h>
//função main inicia a execução do programa
int main(void)
Este exemplo inicializa
{
um array de inteiros com
//usa lista de inicializadores para inicializar o arry n
10 valores e imprime o
int n[10]={32, 27, 64, 18, 95, 14, 90, 70, 60, 37};
array
em
formato
int i;//contador
tabular.
printf("%s %13 n", "Elemento", "Valor");
//lista conteúdo do array em formato tabular
for(i=0; i<10; i++){
printf("%7d %13d n", i, n[i]);
}//fim do for
system("PAUSE");
return 0;//indica conclusão bem sucedida
}//fim do main
DICA
• Se houver menos inicializdores que elementos no array, os
elementos restantes serão inicializados em zero. Exemplo:
int n[10] = {0};
• Essa declaração inicializa explicitamente o primeiro elemento em
zero e inicializa os nove elementos restantes em zero. Isto porque
existem menos inicializadores que elementos no array.
• Arrays não são inicializados automaticamente em zero. É
preciso, pelo menos, inicializar o primeiro elemento em zero para
que os elementos restantes sejam automaticamente zerados.
• Se o tamanho do array for omitido de uma declaração com uma lista
de inicializadores, o número de elementos no array será o número
de elementos na lista de inicializadores.
Int n[] = {1, 2, 3, 4, 5};
Exemplos

Inicializa os elementos de um array de 10
elementos s com os valores 2, 4, 6, ..., 20 e
imprime o array em formato tabular.

//inicializando elementos do array s como inteiros pares de 2 a 20
#include <stdio.h>
#define SIZE 10; //tamanho máximo do array – diretiva de pré-processador
//função main inicia a execução do programa
int main(void)
{
//constante simbólica SIZE - pode ser usada para especificar o tamanho do array
int s[SIZE]; //array s tem SIZE elementos
int j;//contador
for(j=0; j<SIZE; j++){ //define os elementos
s[j]=2+2*j;
} //contador
printf("%s %13s n", "Elemento", "Valor");
//lista de impressão do conteúdo do array s em formato tabular
for(j=0; j<SIZE; j++){
printf("%7d %13d n", j, s[j]);
} //fim do for
system("PAUSE");
return 0; //indica conclusão bem sucedida
} //fim do main
DEFINE
• Define é uma diretiva de pré-processador que define uma
constante simbólica.
• Um aconstante simbólica é um identificador substituído com o
texto substituto pelo pré-processador C antes do programa ser
compilado.
• Quando o programa é pré-processador, todas as ocorrências
da constante simbólica são substituídas com o texto
substituto.
• O uso de constantes simbólicas para especificar tamanhos de
array torna os programas mais escaláveis.
Exemplos
Situação:
Foi pedido a 40 alunos que avaliassem a comida da cantina
estudantil e desse notas que fossem de 1 a 10. 1 – horrorosa
10 – excelente. Coloque as 40 respostas em um array de inteiros
e assuma os resultados da pesquisa.
Aplicação típica de arrays. O objetivo é resumir o número de
respostas de cada tipo.
Array frequency = array de 11 elementos utilizado para contar
o número de ocorrências de cada resposta.
Array response = array de 40 elementos com as respostas dos
alunos.
Exemplos
//programa de pesquisa com estudantes
#include <stdio.h>
#define RESPONSE_SIZE 40 //define tamanho de array
#define FREQUENCY_SIZE 11 //define tamanho de array
//função main inicia a execução do programa
int main(void)
{
int answer; //contador para percorrer 40 respostas
int rating; //contador para percorrer frequencias 1-10
//inicializa contadores de frequencia em zero
int frequency[FREQUENCY_SIZE] = {0};
//coloca as respostas da pesquisa no array responses
int responses[RESPONSE_SIZE] =
{1,2,3,4,5,6,7,8,9,10,1,6,3,8,6,10,3,8,2,7,
6,5,7,6,8,6,7,5,6,6,5,6,7,5,6,4,8,6,8,10};
Exemplos
/* para cada resposta, seleciona valor de um elemento do array
responses e usa esse valor como índice na frequencia do array para
determinar o elemento a ser incrementado
*/
for(answer=0; answer<RESPONSE_SIZE; answer++){
++frequency[responses[answer]];
} //fim do for
//mostra os resultados
printf("%s %17s n", "Avaliação", "Frequencia");
//listas de impressão das frequencias em um formato tabular
for(rating=1; rating<FREQUENCY_SIZE; rating++){
printf("%6d %17d n", rating, frequency[rating]);
} //fim do for
system("PAUSE");
return 0;//indica conclusão bem sucedida
} //fim do main
Exemplos
Exemplos
answer

answer <RESPONSE_SIZE answer++

++frequency[responses[answer]]

0

0 < 11 = V

0 + 1=1

++frequency[1]

1

1 < 11 = V

1 + 1 =2

++frequency[2]

2

2 < 11 = V

2+1=3

++frequency[6]

3

3 < 11 = V

3+1=4

++frequency[4]

4

4 < 11 = V

4+1=5

++frequency[8]

Vetor = int respones[RESPONSE_SIZE];
Posição 0

Posição 1

Posição 2

Posição 3

Posição 4

Posição 5

1

2

6

4

8

5
Exemplos
//calcula a soma dos elementos do array
#include <stdio.h>
#define SIZE 12 //tamanho máximo do array
//função main inicia a execução do programa
int main(void)
{
//usa lista inicializadora para inicializar array
int a[SIZE]={1,3,5,4,7,2,99,16,45,67,89,45};
int i; //contador
int total=0; //soma do array
for(i=0; i<SIZE; i++){
total+=a[i];
} //fim do for
printf("Total de valores dos elementos do array e %d n", total, "n");
system("PAUSE");
return 0; //indica conclusão bem sucedida
} //fim do main
DICA
• C não tem verificação de limites de array para impedir que o
programa se refira a um elemento que não existe.
• Um programa em execução pode ultrapassar o final de um
array sem aviso.
• O programador deve garantir que todas as referencias de array
permançam dentro dos limites do array.
• Ao percorrer um for por um array, o índice do array nunca
deverá ser menor que zero, e sempre deverá ser menor que o
número total de elementos no array (tamanho – 1)
Exercícios
1. Faça um algoritmo que receba a quantidade de peças
vendidas por cada vendedor e armazene essas quantidades
em um vetor. Receba também o preço da peça vendida de
cada vendedor e armazene esses preços em outro vetor.
Existem apenas 10 vendedores, e cada vendedor pode
vender apenas um tipo de peça, isto é, para cada vendedor
existe apenas um preço. Calcule e imprima a quantidade
total de peças vendidas por todos os vendedores e, para
cada vendedor, calcule e imprima o valor total de venda.
Exercícios
2. Faça um programa em C para ler cinco números inteiros
quaisquer e armazená-los em um vetor A. Em seguida, criar um
novo vetor B cujos elementos são os elementos do vetor A com
sinal trocado. Imprima os dois vetores. Por exemplo:
Vetor A: 5, -3, 6, 67, -10
Vetor B: -5, 3, -6, -67, 10
3. Faça um algoritmo para ler dez números quaisquer e
armazená-los em um vetor. Em seguida, imprimir o vetor e
quantos elementos do vetor são positivos; quantos são
negativos; e quantos são nulos.
Exercícios
4. Faça um algoritmo para ler a nota de prova e de trabalho de
dez alunos. Armazenar as notas em dois vetores diferentes.
Em seguida, calcular a média de cada aluno, armazenandoas em um outro vetor. Imprimir a maior e a menor média;
quantos alunos obtiveram média igual ou superior à 7,0; e
os três vetores.
5. Faça um algoritmo para ler cinco números inteiros quaisquer
e armazená-los em um vetor. Em seguida, imprimir o vetor e
quantos elementos do vetor são positivos; quantos são
negativos; e quantos são nulos.
Exercícios
6. Faça um algoritmo para ler a idade de dez membros de
umclube e armazená-las em um vetor. Em seguida, imprimir
quantos membros têm idade entre 15 e 30 anos; entre 31 e 50
anos; e entre 51 e 70 anos. Imprimir também qual dos três
intervalos possui mais membros e o vetor.

7. Faça um algoritmo para ler a idade e o sexo de dez crianças de
um orfanato, armazenando os dados em dois vetores. Imprimir
a idade média das crianças; quantas crianças possuem idade
superior a 5 anos; a porcentagem de crianças do sexo
masculino; e quantas crianças possuem idade inferior a idade
média.
Exercícios
8. Faça um algoritmo para ler as temperatuas registradas nos
últimos 10 dias e armazená-las em um vetor. Em
seguida, calcular e imprimir a maior temperatura; a
temperatura média destes 10 dias; o número de dias em que a
temperatura foi superior a temperatura média; e todas as
temperaturas registradas.
9. Faça um algoritmo para preencher um vetor de 10 elementos
inteiros colocando -1 nas posições ímpares e 0 nas posições
pares. Em seguida, imprimir o vetor.

Mais conteúdo relacionado

Mais procurados

1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1 Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1 Cloves da Rocha
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosjormad
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaLeinylson Fontinele
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Aula 4 - Teste de mesa
Aula 4 - Teste de mesaAula 4 - Teste de mesa
Aula 4 - Teste de mesaPacc UAB
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisFabrício Lopes Sanchez
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em JavaDenis L Presciliano
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoLeinylson Fontinele
 
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TADEstrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TADLeinylson Fontinele
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScriptBruno Catão
 

Mais procurados (20)

1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
 
Estrutura de Dados - Registros
Estrutura de Dados - RegistrosEstrutura de Dados - Registros
Estrutura de Dados - Registros
 
Introdução ao MySQL
Introdução ao MySQLIntrodução ao MySQL
Introdução ao MySQL
 
Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1 Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na prática
 
Algoritmos - Vetores
Algoritmos - VetoresAlgoritmos - Vetores
Algoritmos - Vetores
 
Algoritmos - Pseudocódigo
Algoritmos - PseudocódigoAlgoritmos - Pseudocódigo
Algoritmos - Pseudocódigo
 
Introducao ao C#
Introducao ao C#Introducao ao C#
Introducao ao C#
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Aula 4 - Teste de mesa
Aula 4 - Teste de mesaAula 4 - Teste de mesa
Aula 4 - Teste de mesa
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em Java
 
Estrutura de repetição
Estrutura de repetiçãoEstrutura de repetição
Estrutura de repetição
 
6 estruturas de dados heterogêneas
6  estruturas de dados heterogêneas6  estruturas de dados heterogêneas
6 estruturas de dados heterogêneas
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
 
Algoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e MatrizesAlgoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e Matrizes
 
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TADEstrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScript
 

Destaque

Coletanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-cColetanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-cWilson Kushima
 
Assembly para pc-25paginas
Assembly para pc-25paginasAssembly para pc-25paginas
Assembly para pc-25paginasMikeNandes
 
Glosario de qbasic liliana
Glosario de qbasic lilianaGlosario de qbasic liliana
Glosario de qbasic lilianakhjhjhjh
 
CakePHP com sotaque brasileiro
CakePHP com sotaque brasileiroCakePHP com sotaque brasileiro
CakePHP com sotaque brasileiroJuan Basso
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintóticaPablo Silva
 
C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem Claudson Oliveira
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Dicas para aumentar a performance de um software PHP
Dicas para aumentar a performance de um software PHPDicas para aumentar a performance de um software PHP
Dicas para aumentar a performance de um software PHPAlmir Neto
 
Conceitos básicos de AEDS
Conceitos básicos de AEDSConceitos básicos de AEDS
Conceitos básicos de AEDSPablo Silva
 
CakePHP - Aprendendo a fazer o primeiro bolo
CakePHP - Aprendendo a fazer o primeiro boloCakePHP - Aprendendo a fazer o primeiro bolo
CakePHP - Aprendendo a fazer o primeiro boloelliando dias
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHPFelipe Ribeiro
 

Destaque (20)

Coletanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-cColetanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-c
 
Lista c
Lista cLista c
Lista c
 
Apostila C ANSI
Apostila C ANSIApostila C ANSI
Apostila C ANSI
 
Assembly para pc-25paginas
Assembly para pc-25paginasAssembly para pc-25paginas
Assembly para pc-25paginas
 
Glosario de qbasic liliana
Glosario de qbasic lilianaGlosario de qbasic liliana
Glosario de qbasic liliana
 
CakePHP com sotaque brasileiro
CakePHP com sotaque brasileiroCakePHP com sotaque brasileiro
CakePHP com sotaque brasileiro
 
PROGRAMAS QBASIC
PROGRAMAS QBASICPROGRAMAS QBASIC
PROGRAMAS QBASIC
 
Recursividade
RecursividadeRecursividade
Recursividade
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintótica
 
C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Dicas para aumentar a performance de um software PHP
Dicas para aumentar a performance de um software PHPDicas para aumentar a performance de um software PHP
Dicas para aumentar a performance de um software PHP
 
Apostila cobol
Apostila cobolApostila cobol
Apostila cobol
 
Funções em C
Funções em CFunções em C
Funções em C
 
Conceitos básicos de AEDS
Conceitos básicos de AEDSConceitos básicos de AEDS
Conceitos básicos de AEDS
 
Introdução ao PHP
Introdução ao PHPIntrodução ao PHP
Introdução ao PHP
 
Linguagem C - Uniões
Linguagem C - UniõesLinguagem C - Uniões
Linguagem C - Uniões
 
CakePHP - Aprendendo a fazer o primeiro bolo
CakePHP - Aprendendo a fazer o primeiro boloCakePHP - Aprendendo a fazer o primeiro bolo
CakePHP - Aprendendo a fazer o primeiro bolo
 
Linguagem C - Estruturas
Linguagem C - EstruturasLinguagem C - Estruturas
Linguagem C - Estruturas
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHP
 

Semelhante a Linguagem C - Vetores

Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Elaine Cecília Gatto
 
Estruturas de dados e técnicas de programação
Estruturas de dados e técnicas de programaçãoEstruturas de dados e técnicas de programação
Estruturas de dados e técnicas de programaçãoEverson Wolf
 
Aula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptxAula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptxOsvano Silva
 
Manual PSInf - Modulo 5
Manual PSInf - Modulo 5Manual PSInf - Modulo 5
Manual PSInf - Modulo 5Mariana Hiyori
 
mod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaomod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaodiogoa21
 
Java: Estruturas de Repetição
Java: Estruturas de RepetiçãoJava: Estruturas de Repetição
Java: Estruturas de RepetiçãoArthur Emanuel
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dadosgjpbg
 
Apostila estrutura de dados 2
Apostila estrutura de dados 2Apostila estrutura de dados 2
Apostila estrutura de dados 2Leandro Lopes
 
Arrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programaçãoArrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programaçãoJaime Martins
 

Semelhante a Linguagem C - Vetores (20)

Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1
 
Java8
Java8Java8
Java8
 
Estruturas de dados e técnicas de programação
Estruturas de dados e técnicas de programaçãoEstruturas de dados e técnicas de programação
Estruturas de dados e técnicas de programação
 
Aula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptxAula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptx
 
Java básico - Módulo 06: Array
Java básico - Módulo 06: ArrayJava básico - Módulo 06: Array
Java básico - Módulo 06: Array
 
Manual PSInf - Modulo 5
Manual PSInf - Modulo 5Manual PSInf - Modulo 5
Manual PSInf - Modulo 5
 
Ap vetores
Ap vetoresAp vetores
Ap vetores
 
mod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaomod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacao
 
Pesquisa ppi 2
Pesquisa ppi 2Pesquisa ppi 2
Pesquisa ppi 2
 
Vetores e Matrizes.pdf
Vetores e Matrizes.pdfVetores e Matrizes.pdf
Vetores e Matrizes.pdf
 
Programação aula002
Programação aula002Programação aula002
Programação aula002
 
Cap09
Cap09Cap09
Cap09
 
Cap09
Cap09Cap09
Cap09
 
Cap09
Cap09Cap09
Cap09
 
Alg aula 06 - vetores tp1
Alg   aula 06 - vetores tp1Alg   aula 06 - vetores tp1
Alg aula 06 - vetores tp1
 
Java: Estruturas de Repetição
Java: Estruturas de RepetiçãoJava: Estruturas de Repetição
Java: Estruturas de Repetição
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Apostila estrutura de dados 2
Apostila estrutura de dados 2Apostila estrutura de dados 2
Apostila estrutura de dados 2
 
Arrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programaçãoArrays / Vetores / Matrizes em programação
Arrays / Vetores / Matrizes em programação
 
Trabalho vetores
Trabalho vetoresTrabalho vetores
Trabalho vetores
 

Mais de Elaine Cecília Gatto

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaElaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaElaine Cecília Gatto
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Elaine Cecília Gatto
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCElaine Cecília Gatto
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxElaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarElaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesElaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationElaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfElaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoElaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsElaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoElaine Cecília Gatto
 

Mais de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Último

Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxReinaldoMuller1
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...HELENO FAVACHO
 
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVAEDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVAssuser2ad38b
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2Maria Teresa Thomaz
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
Aula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptxAula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptxandrenespoli3
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesFabianeMartins35
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...Francisco Márcio Bezerra Oliveira
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
Produção de Texto - 5º ano - CRÔNICA.pptx
Produção de Texto - 5º ano - CRÔNICA.pptxProdução de Texto - 5º ano - CRÔNICA.pptx
Produção de Texto - 5º ano - CRÔNICA.pptxLeonardoGabriel65
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdfmarlene54545
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptssuser2b53fe
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptxJssicaCassiano2
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*Viviane Moreiras
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxFlviaGomes64
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosLucianoPrado15
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéisines09cachapa
 
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfamarianegodoi
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfHELENO FAVACHO
 

Último (20)

Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptx
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVAEDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Aula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptxAula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptx
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Produção de Texto - 5º ano - CRÔNICA.pptx
Produção de Texto - 5º ano - CRÔNICA.pptxProdução de Texto - 5º ano - CRÔNICA.pptx
Produção de Texto - 5º ano - CRÔNICA.pptx
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 

Linguagem C - Vetores

  • 1. VETORES Profª Ms. Engª Elaine Cecília Gatto Curso de Bacharelado em Engenharia de Computação Universidade do Sagrado CoraçãO – USC Bauru/SP
  • 2. ARRAYS • São estruturas de dados que consistem em itens de dados relacionados do mesmo tipo. • Arrays e estruturas são entidades estáticas porque permanecem do mesmo tamanho ao longo de toda a execução do programa. • Elas podem ser de uma classe de armazenamento automática e, portanto, ser criadas e destruídas sempre que os blocos em que estiverem definidas, forem iniciados e finalizados. • Um array é um conjunto de espaços de memória que se relacionam pelo fato de que todos têm o mesmo nome e o mesmo tipo. • Para se referir a um local ou elemento em particular no array, especificamos o nome do array e o número da posição do elemento em particular no array.
  • 3. ARRAYS Um array chamado c com 12 elementos c[0] = elemento zerésimo c[i-1] = iésimo elemento c[índice] = índice pode ser um número inteiro ou uma expressão = c[i+2] ou c[a+b] Nome do array [número da posição do elemento dentro do array c] Valores armazenados c[0] -45 c[1] 6 c[2] 0 c[3] 72 c[4] 1543 c[5] -89 c[6] 0 c[7] 62 c[8] -3 c[9] 1 c[10] 6453 c[11] 78
  • 4. ARRAYS • É importante observar a diferença entre o SÉTIMO ELEMENTO DO ARRAY e o ELEMENTO DE ARRAY SETE. Como os índice de array começam em zero, o SÉTIMO ELEMENTO DO ARRAY tem o índice 6, enquanto o ELEMENTO DE ARRAY SETE tem o índice 7 e, na realidade, é o oitavo elemento do array. • Os colchetes usados para delimitar o subscrito de um array são realmente considerados como um operador na linguagem C. Eles têm o mesmo nível de precedência do operador de chamada de função – parênteses.
  • 5. DECLARANDO ARRAYS • Os arrays ocupam espaço na memória. Você especifica o tipo de cada elemento e o número de elementos exigidos por array de modo que o computador possa reservar a quantidade de memória apropriada. int c[12]; • Esta é a declaração usada para pedir ao computador que reserve 12 elementos para o array de inteiros C. int b[100], x[27]; • Esta declaração reserva 100 elementos para o array de inteiros b e 27 elementos para o array de inteiros x.
  • 6. Exemplos //inicializando um array #include <stdio.h> O exemplo utiliza estruturas for para inicializar os elementos de um array n de 10 elementos do tipo inteiro com zeros e imprimir o array em formato tabular. //função main inicia a execução do programa int main(void) { int n[10]; //n é um array de 10 inteiros int i; //contador //inicializa elementos do array n como zero for(i=0; i<10; i++){ n[i]=0; //define elemento no local i como zero } //fim do for printf("%s %13s n ", "Elemento", "Valor"); //saída na tela de conteúdo do array n em formato tabular for(i=0; i<10; i++){ printf("%7d %13d n", i, n[i]); } //fim do for system("PAUSE"); return 0; //indica conclusão bem sucedida } //fim do main
  • 7. Exemplos //inicializando um array com uma lista de inicializadores #include <stdio.h> //função main inicia a execução do programa int main(void) Este exemplo inicializa { um array de inteiros com //usa lista de inicializadores para inicializar o arry n 10 valores e imprime o int n[10]={32, 27, 64, 18, 95, 14, 90, 70, 60, 37}; array em formato int i;//contador tabular. printf("%s %13 n", "Elemento", "Valor"); //lista conteúdo do array em formato tabular for(i=0; i<10; i++){ printf("%7d %13d n", i, n[i]); }//fim do for system("PAUSE"); return 0;//indica conclusão bem sucedida }//fim do main
  • 8. DICA • Se houver menos inicializdores que elementos no array, os elementos restantes serão inicializados em zero. Exemplo: int n[10] = {0}; • Essa declaração inicializa explicitamente o primeiro elemento em zero e inicializa os nove elementos restantes em zero. Isto porque existem menos inicializadores que elementos no array. • Arrays não são inicializados automaticamente em zero. É preciso, pelo menos, inicializar o primeiro elemento em zero para que os elementos restantes sejam automaticamente zerados. • Se o tamanho do array for omitido de uma declaração com uma lista de inicializadores, o número de elementos no array será o número de elementos na lista de inicializadores. Int n[] = {1, 2, 3, 4, 5};
  • 9. Exemplos Inicializa os elementos de um array de 10 elementos s com os valores 2, 4, 6, ..., 20 e imprime o array em formato tabular. //inicializando elementos do array s como inteiros pares de 2 a 20 #include <stdio.h> #define SIZE 10; //tamanho máximo do array – diretiva de pré-processador //função main inicia a execução do programa int main(void) { //constante simbólica SIZE - pode ser usada para especificar o tamanho do array int s[SIZE]; //array s tem SIZE elementos int j;//contador for(j=0; j<SIZE; j++){ //define os elementos s[j]=2+2*j; } //contador printf("%s %13s n", "Elemento", "Valor"); //lista de impressão do conteúdo do array s em formato tabular for(j=0; j<SIZE; j++){ printf("%7d %13d n", j, s[j]); } //fim do for system("PAUSE"); return 0; //indica conclusão bem sucedida } //fim do main
  • 10. DEFINE • Define é uma diretiva de pré-processador que define uma constante simbólica. • Um aconstante simbólica é um identificador substituído com o texto substituto pelo pré-processador C antes do programa ser compilado. • Quando o programa é pré-processador, todas as ocorrências da constante simbólica são substituídas com o texto substituto. • O uso de constantes simbólicas para especificar tamanhos de array torna os programas mais escaláveis.
  • 11. Exemplos Situação: Foi pedido a 40 alunos que avaliassem a comida da cantina estudantil e desse notas que fossem de 1 a 10. 1 – horrorosa 10 – excelente. Coloque as 40 respostas em um array de inteiros e assuma os resultados da pesquisa. Aplicação típica de arrays. O objetivo é resumir o número de respostas de cada tipo. Array frequency = array de 11 elementos utilizado para contar o número de ocorrências de cada resposta. Array response = array de 40 elementos com as respostas dos alunos.
  • 12. Exemplos //programa de pesquisa com estudantes #include <stdio.h> #define RESPONSE_SIZE 40 //define tamanho de array #define FREQUENCY_SIZE 11 //define tamanho de array //função main inicia a execução do programa int main(void) { int answer; //contador para percorrer 40 respostas int rating; //contador para percorrer frequencias 1-10 //inicializa contadores de frequencia em zero int frequency[FREQUENCY_SIZE] = {0}; //coloca as respostas da pesquisa no array responses int responses[RESPONSE_SIZE] = {1,2,3,4,5,6,7,8,9,10,1,6,3,8,6,10,3,8,2,7, 6,5,7,6,8,6,7,5,6,6,5,6,7,5,6,4,8,6,8,10};
  • 13. Exemplos /* para cada resposta, seleciona valor de um elemento do array responses e usa esse valor como índice na frequencia do array para determinar o elemento a ser incrementado */ for(answer=0; answer<RESPONSE_SIZE; answer++){ ++frequency[responses[answer]]; } //fim do for //mostra os resultados printf("%s %17s n", "Avaliação", "Frequencia"); //listas de impressão das frequencias em um formato tabular for(rating=1; rating<FREQUENCY_SIZE; rating++){ printf("%6d %17d n", rating, frequency[rating]); } //fim do for system("PAUSE"); return 0;//indica conclusão bem sucedida } //fim do main
  • 15. Exemplos answer answer <RESPONSE_SIZE answer++ ++frequency[responses[answer]] 0 0 < 11 = V 0 + 1=1 ++frequency[1] 1 1 < 11 = V 1 + 1 =2 ++frequency[2] 2 2 < 11 = V 2+1=3 ++frequency[6] 3 3 < 11 = V 3+1=4 ++frequency[4] 4 4 < 11 = V 4+1=5 ++frequency[8] Vetor = int respones[RESPONSE_SIZE]; Posição 0 Posição 1 Posição 2 Posição 3 Posição 4 Posição 5 1 2 6 4 8 5
  • 16. Exemplos //calcula a soma dos elementos do array #include <stdio.h> #define SIZE 12 //tamanho máximo do array //função main inicia a execução do programa int main(void) { //usa lista inicializadora para inicializar array int a[SIZE]={1,3,5,4,7,2,99,16,45,67,89,45}; int i; //contador int total=0; //soma do array for(i=0; i<SIZE; i++){ total+=a[i]; } //fim do for printf("Total de valores dos elementos do array e %d n", total, "n"); system("PAUSE"); return 0; //indica conclusão bem sucedida } //fim do main
  • 17. DICA • C não tem verificação de limites de array para impedir que o programa se refira a um elemento que não existe. • Um programa em execução pode ultrapassar o final de um array sem aviso. • O programador deve garantir que todas as referencias de array permançam dentro dos limites do array. • Ao percorrer um for por um array, o índice do array nunca deverá ser menor que zero, e sempre deverá ser menor que o número total de elementos no array (tamanho – 1)
  • 18. Exercícios 1. Faça um algoritmo que receba a quantidade de peças vendidas por cada vendedor e armazene essas quantidades em um vetor. Receba também o preço da peça vendida de cada vendedor e armazene esses preços em outro vetor. Existem apenas 10 vendedores, e cada vendedor pode vender apenas um tipo de peça, isto é, para cada vendedor existe apenas um preço. Calcule e imprima a quantidade total de peças vendidas por todos os vendedores e, para cada vendedor, calcule e imprima o valor total de venda.
  • 19. Exercícios 2. Faça um programa em C para ler cinco números inteiros quaisquer e armazená-los em um vetor A. Em seguida, criar um novo vetor B cujos elementos são os elementos do vetor A com sinal trocado. Imprima os dois vetores. Por exemplo: Vetor A: 5, -3, 6, 67, -10 Vetor B: -5, 3, -6, -67, 10 3. Faça um algoritmo para ler dez números quaisquer e armazená-los em um vetor. Em seguida, imprimir o vetor e quantos elementos do vetor são positivos; quantos são negativos; e quantos são nulos.
  • 20. Exercícios 4. Faça um algoritmo para ler a nota de prova e de trabalho de dez alunos. Armazenar as notas em dois vetores diferentes. Em seguida, calcular a média de cada aluno, armazenandoas em um outro vetor. Imprimir a maior e a menor média; quantos alunos obtiveram média igual ou superior à 7,0; e os três vetores. 5. Faça um algoritmo para ler cinco números inteiros quaisquer e armazená-los em um vetor. Em seguida, imprimir o vetor e quantos elementos do vetor são positivos; quantos são negativos; e quantos são nulos.
  • 21. Exercícios 6. Faça um algoritmo para ler a idade de dez membros de umclube e armazená-las em um vetor. Em seguida, imprimir quantos membros têm idade entre 15 e 30 anos; entre 31 e 50 anos; e entre 51 e 70 anos. Imprimir também qual dos três intervalos possui mais membros e o vetor. 7. Faça um algoritmo para ler a idade e o sexo de dez crianças de um orfanato, armazenando os dados em dois vetores. Imprimir a idade média das crianças; quantas crianças possuem idade superior a 5 anos; a porcentagem de crianças do sexo masculino; e quantas crianças possuem idade inferior a idade média.
  • 22. Exercícios 8. Faça um algoritmo para ler as temperatuas registradas nos últimos 10 dias e armazená-las em um vetor. Em seguida, calcular e imprimir a maior temperatura; a temperatura média destes 10 dias; o número de dias em que a temperatura foi superior a temperatura média; e todas as temperaturas registradas. 9. Faça um algoritmo para preencher um vetor de 10 elementos inteiros colocando -1 nas posições ímpares e 0 nas posições pares. Em seguida, imprimir o vetor.