Buscar

TP Capitulo 5 Vetor

Prévia do material em texto

TÉCNICAS DE PROGRAMAÇÃO
LINGUAGEM C
CAPÍTULO 05 –
Estruturas de Dados Homogêneas Unidimensionais - Vetores
Prof. Esp. Ewerton Bastos
Conceito
 A Imaginem que um professor nos encomendou um programa, que tenha que armazenar as médias dos 50 alunos de uma turma. Como faríamos para armazenar essas médias? Até o ponto que estudamos a linguagem C, teríamos que declarar 50 variáveis do tipo float, uma por uma. Que trabalheira, não é mesmo? E se o professor tivesse 300 alunos? Passaríamos um tempão só declarando variáveis e, além disso, teríamos muito trabalho para fazer o controle das mesmas. Mas não se preocupem, com os vetores, o professor pode ter mais de 1000 alunos, que a declaração e manuseio dos dados será bem fácil.
Declaração
tipo identificador [tamanho];
Ex:
int idade[100];
float nota[25];
char nome[80];
/*Os vetores têm tamanhos fixos e não podemos armazenar mais elementos do que a quantidade que foi solicitada no momento da declaração do vetor.*/
Acessando os elementos de um vetor
Ex:
float valor[10]; //declaração do vetor de 10 posições
int x;
x = 3;
valor[1] = 6.6;
valor[x] = 9.9
valor[x+2] = 10.0;
//As posições vão de 0 a 9
Inicialização de vetores
tipo identificador[tamanho] = {lista de valores};
Ex:
int idade[7] = {12, 30, 14, 7, 13, 15, 6};
char vogal[5] = {‘a’, ‘e’, ‘i’, ‘o’, ‘u’};
float nota[5] = {8.4, 6.9, 4.5};
float media[5] = {0};
Exemplo1
Escrever um algoritmo que preencha um vetor de 5 posições com números inteiros. Em seguida, determinar e mostrar os números ímpares que estão armazenados no vetor.
Solução
#include <stdlib.h>
#include<stdio.h>
#include<conio.h>
int main () {
int i,numeros[5];
 for(i=0;i<5;i++)
 {
 printf("\nDigite o %d\n",i+1);
 scanf("%d",&numeros[i]);
 }
 printf("\nO numeros impares sao:\n");
 for(i=0;i<5;i++)
 {
 if(numeros[i]%2!=0)
 {
 printf(" %d ",numeros[i]);
 }
 }
 getch();
}
Exemplo2
Escrever um algoritmo que preencha um vetor de 10 elementos numéricos. Somar todos os elementos e imprimir o resultado da soma.
 
Solução
#include <stdlib.h>
#include<stdio.h>
#include<conio.h>
int main () {
int i,soma,numeros[10];
 soma=0;
 for(i=0;i<10;i++)
 {
 printf("\nDigite o %d\n",i+1);
 scanf("%d",&numeros[i]);
 soma=soma+numeros[i];
 }
 printf("\n A soma e: %d\n",soma);
 getch();
}

Continue navegando