Como usar arrays multidimensionais em c programação

Quando você precisa para descrever itens na segunda ou terceira dimensão, você pode usar programação C para conjurar luz um tipo multidimensional da matriz.

Video: C# Vetor para Iniciantes ( Array unidimensional )

Como fazer uma matriz bidimensional

Ela ajuda a pensar em uma matriz bidimensional como uma grade de linhas e colunas. Um exemplo deste tipo de matriz é um tabuleiro de xadrez - uma grelha de 8 linhas e colunas 8. Embora você pode declarar uma única matriz de 64 elementos para lidar com o trabalho de representar um tabuleiro de xadrez, uma matriz bidimensional funciona melhor. Tal coisa seria declarado desta forma:

int xadrez [8] [8] -

Os dois colchetes definir duas dimensões diferentes da matriz de xadrez: 8 linhas e colunas 8. O quadrado localizado na primeira linha e coluna seria referenciado como xadrez [0] [0]. O último quadrado nessa linha seria xadrez [0] [7], ea última casa do tabuleiro de xadrez seria [7] [7].

Em Tic-Tac-dedo do pé, uma placa de tic-tac-dedo do pé simples é criado usando uma matriz bidimensional: 3-por-3. As linhas 9 a 11 preencher a matriz. Linha 12 adiciona um personagem X na praça central.

JOGO DA VELHA

#include int main () {char tictactoe [3] [3] -int x, y - / * inicializar matriz * / for (x = 0-xlt; 3-x ++) para (y = 0-YLT; 3-y ++ ) tictactoe [x] [y] =` .`- tictactoe [1] [1] = `X` - / * placa de jogo visor * / (coloca"Pronto para jogar Tic-Tac-Toe?") -para (x = 0-xlt; 3-x ++) {para (y = 0-YLT; 3-y ++) printf ("% ct", Tictactoe [x] [y]) - putchar ( `n`) -} retorno (0) -}

Linhas 14 a 21 apresentar a matriz. Tal como acontece com a sua criação, a matriz é exibida usando uma encaixado para o circuito.

Exercício 1: Criar um novo projeto usando o código-fonte apresentado na Tic-Tac-Toe. Construir e executar.

Um tipo de matriz bidimensional que é bastante fácil de entender é uma matriz de strings, como mostra a uma matriz de strings.

Uma matriz de strings

#include #define TAMANHO 3int main () {char presidente [TAMANHO] [8] = {"Clinton","arbusto","Obama"} -int x, índice-para (x = 0 x-

Linha 7 em uma matriz de strings declara uma matriz de char bidimensional: presidente. O primeiro valor entre parêntesis rectos está o número de itens (cordas) no array. O segundo valor entre colchetes é o tamanho máximo exigido para manter o maior string. A maior cadeia é Clinton com sete letras, então oito caracteres são necessários, o que inclui a terminação ou caractere nulo.

Video: [C] Aula 26 - Array / Matriz

Porque todos os itens na segunda dimensão da matriz deve ter o mesmo número de elementos, todas as cordas são armazenados usando oito caracteres. Sim, isso é um desperdício, mas é a forma como o sistema funciona.



exercício 2: Digite o código-fonte de um conjunto de cordas em sua construção redator e executar o programa.

As demonstrações basicamente arrastar-se através da segunda dimensão da matriz presidente, cuspindo um carácter de cada vez.

Exercício 3: Substituir linhas 15 a 23 em uma matriz de cadeias com uma única coloca () a função de exibir a cadeia. Veja como essa afirmação parece:

puts (Presidente [x]) -

Quando se trabalha com elementos string em uma matriz, a cadeia é referenciado pela primeira dimensão única.

exercício 4: Modificar seu código-fonte do Exercício 3 para que mais três presidentes são adicionados à matriz: Washington, Adams, e Jefferson.

Como criar matrizes tridimensionais

matrizes bidimensionais são bastante comuns no reino de programação. Multidimensional é uma loucura!

Bem, talvez não. Três e matrizes de quatro dimensões têm o seu lugar. O grande problema é que o cérebro humano tem dificuldade em manter-se com as várias dimensões possíveis.

Indo 3D ilustra código que funciona com uma matriz tridimensional. A declaração é encontrada na Linha 5. A terceira dimensão é simplesmente o terceiro conjunto de colchetes, o que efetivamente cria um tabuleiro de jogo tic-tac-toe 3D.

VAI 3D

#include int main () {char tictactoe [3] [3] [3] -int x, y, z - / * inicializar matriz * / for (x = 0-xlt; 3-x ++) para (y = 0- YLT; 3-y ++) para (Z = 0-zlt; 3-Z ++) tictactoe [x] [y] [Z] =` .`- tictactoe [1] [1] [1] = `X` - / * jogo de exibição de tabuleiro * / puts ("Pronto para jogar 3D Tic-Tac-Toe?") -para (Z = 0-zlt; 3-Z ++) {printf ("Nível% dn", Z + 1) -para (x = 0-xlt; 3-x ++) {para (y = 0-YLT; 3-y ++) printf ("% ct", Tictactoe [x] [y] [z]) - putchar ( `n`) -}} retorno (0) -}

As linhas 8 a 12 encher a matriz com dados, utilizando variáveis X, y, e z como as coordenadas tridimensionais. Linha 13 lugares um personagem X no cubo central, que lhe dá uma idéia de como os elementos individuais são referenciadas.

O resto do código de Linhas 15 a 26 exibe a matriz.

exercício 5: Criar um programa conjunto tridimensional usando o código-fonte do Indo 3D. Construir e executar.

Lamentavelmente, a saída é bidimensional.


Publicações relacionadas