Vetores, Matrizes e Strings em C Parte 2

8
Programação de Computadores Aula 4 e 5 23 e 30/08/2012 Profª Ms. Engª Elaine Cecília Gatto Unidade 4: Vetores, Matrizes e Strings Curso de Bacharelado em Engenharia de Computação Universidade do Sagrado Coração – USC Bauru/SP

description

Vetores, Matrizes e Strings em C Parte 2

Transcript of Vetores, Matrizes e Strings em C Parte 2

Page 1: Vetores, Matrizes e Strings em C Parte 2

Programação de Computadores Aula 4 e 5

23 e 30/08/2012

Profª Ms. Engª Elaine Cecília Gatto

Unidade 4: Vetores, Matrizes e Strings

Curso de Bacharelado em Engenharia de Computação

Universidade do Sagrado Coração – USC

Bauru/SP

Page 2: Vetores, Matrizes e Strings em C Parte 2

Matrizes

• Matrizes precisam de dois índices, ao invés de apenas um, como no caso do vetor.

• São estruturas multidimensionais.

• Cada elemento de cada linha ou coluna é inicializado com o índice zero.

• Sintaxe:

• tipodavariavavel nomedavariavel[linha, coluna]

• Tipo da variável: tipo de dado – char, int, float, etc;

• Nome da variável: identificador;

• [linha, colunha]: apresenta o tamanho da matriz, as dimensões, quantas linhas e colunas a matriz possui

Page 3: Vetores, Matrizes e Strings em C Parte 2

Matrizes

• Exemplos:

• Int numeros [2] [3] : criando uma matriz do tipo inteiro com 2 linhas e 3 colunas – matriz retangular

• Int numeros [4] [4] : criando uma matriz do tipo inteiro com 4 linhas e 4 colunas – matriz quadrada

Coluna 1 Coluna 2 Coluna 3

Linha 1 L1_C1 L1_C2 L1_C3

Linha 2 L2_C1 L2_C2 L2_C3

Coluna 1 Coluna 2 Coluna 3 Coluna 4

Linha 1 L1_C1 L1_C2 L1_C3 L1_C4

Linha 2 L2_C1 L2_C2 L2_C3 L2_C4

Linha 3 L3_C1 L3_C2 L3_C3 L3_C4

Linha 4 L4_C1 L4_C2 L4_C3 L4_C4

Page 4: Vetores, Matrizes e Strings em C Parte 2

Matrizes

• Exemplos: notas de alunos – int notas [5] [2];

POSIÇÃO 1 2

Bimestre 1 Bimestre 2 ÍNDICE DA LINHA

Aluno 1 5,0 10,0 0

Aluno 2 10,0 4,0 1

Aluno 3 7,0 6,0 2

Aluno 4 3,0 9,0 3

Aluno 5 4,0 8,0 4

ÍNDICE DA COLUNA

0 1

Page 5: Vetores, Matrizes e Strings em C Parte 2

MATRIZES

#include <stdio.h>

#include <conio.h>

int main() {

int numero[5][5], linha=0, coluna=0;

for(linha=0; linha<5; linha++) {

for(coluna=0; coluna<5; coluna++) {

printf(“ \n digite um numero para a linha %d, coluna %d: “, linha+1, coluna+1);

scanf(“%d”, &numero*linha+*coluna+);

}

}

getch();

return(0);

}

Page 6: Vetores, Matrizes e Strings em C Parte 2

Matrizes

#include <stdio.h>

#include <stdlib.h>

int main(){

//duas linhas: alunos

//quatro colunas: 3 notas mais a média

float notas[2][4], total=0;

int i, nt;

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

for(nt=0; nt<4; nt++){

notas[i][nt]=0;

}

}

Page 7: Vetores, Matrizes e Strings em C Parte 2

Matrizes

//incluindo notas

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

printf(" \n Digite as notas do aluno %d: ", i+1);

printf(" \n ");

total=0;//limpa o total para cada aluno

//a quarta ocorrência - índice 3 - é usado para fazer a média

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

printf(" \n Digite a nota %d: ", nt+1);

scanf("%f", &notas[i][nt]);

total=total+notas[i][nt];

}

//a média será armazenada no índice 3

notas[i][3]=(total/3);

}

Page 8: Vetores, Matrizes e Strings em C Parte 2

Matrizes

//apresentando as notas por aluno for(i=0; nt<4; i++){ printf(" \n Notas do aluno %d: ", i+1); printf(" \n "); for(nt=0; nt<4; nt++){ if(nt<3){ printf(" \n Nota %d: %2.1f ", nt+1, notas[i][nt]); } else { printf(" \n Media %2.1f ", notas[i][nt]); } } } printf(" \n \n "); system("pause"); return(0); }