Vetores são agrupamentos de determinado objeto em ordem seqüencial na
memória. Isto, não quer dizer nada pra uma pessoa iniciando. Então, vamos
a exemplos!
Declaramos variáveis normais assim:
int contador1, contador2, contador3, contador4;
Agora, podemos declarar essa mesma variável contador como um vetor e
evitamos "repetições".
int contador[4];
Acima, está um exemplo de declaração de vetores. Os vetores seguem o
mesmo principio da declaração de uma variável normal. O valor entre
colchetes, depois do nome, informa quantos elementos a variável terá.
Ao contrario do Pascal, que normalmente o vetor inicia em 1
(ex. contador[1]), na linguagem C o primeiro elemento é o 0 (Zero),
ou seja, contador[0].
Podemos, ler o contador como uma variável normal:
scanf("%d",&contador[0]); //na parte de Ponteiros falarem porque podemos ler sem o &
//ou
scanf("%d",contador); /* se não for passado o elemento pra ser acessado após o nome da variável o C, entende que é para acessar o primeiro elemento do vetor */
Um programa que demonstra isso pode ser:
#include <stdio.h>
void main(void)
{
int x, conta[3];
for (x=0;x<3;x++)
{
scanf(" %d", &conta[x]);
printf("conta %d vale %d\n", x, conta[x]);
}
}
Ainda sobre vetores, se quisermos inicializar ele diretamente na declaração?
A exemplo de:
int x=0;
Como fazer? Simples!
int conta[3] = {0, 0, 0};
Modificando nosso programinha:
#include <stdio.h>
void main(void)
{
int x, conta[3]={0, 0, 0};
for (x=0;x<3;x++)
{
scanf(" %d", &conta[x]);
printf("conta %d vale %d\n", x, conta[x]);
}
}
Vetores de Vetores
Os vetores de vetores são chamados também de vetores multi-dimensionais
ou matrizes! Os vetores de vetores tem declaração parecida, se não
idêntica aos vetores normais.
Vamos ao exemplo:
#include <stdio.h>
void main(void)
{
int x, y, conta[3][3]={0, 0, 0, 0, 0, 0, 0, 0, 0};
for (x=0;x<3;x++)
for(y=0;y<3;y++)
{
scanf(" %d", &conta[x][y]);
printf("conta %d,%d vale %d\n", x, y, conta[x][y]);
}
}