Noções básicas sobre matrizes para c programação
A ordem
Conteúdo
Uma matriz é declarada como qualquer outra variável. É dado um tipo e um nome e, em seguida, também um conjunto de colchetes. A declaração a seguir declara a matriz pontuação máxima:
int highscore [] -
Esta declaração é incomplete- o compilador ainda não sabe quantos itens, ou elementos, estão na matriz. Então, se a matriz de recordes foram para prender três elementos, seria declarada como este:
int pontuação máxima [3] -
Esta matriz contém três elementos, cada um deles o seu próprio valor int. Os elementos são acessados como este:
pontuação máxima [0] = 750-recordes [1] = 699-recordes [2] = 675-
Um elemento de matriz é referenciada pelo seu número de índice em colchetes. O primeiro item é o índice 0, o que é algo que você tem que lembrar. Em C, você começa a contagem em 0, que tem as suas vantagens, por isso não acho que é estúpido.
No exemplo anterior, o primeiro elemento da matriz, pontuação máxima [0], é atribuído o valor 750 do segundo elemento, 699- e a terceira, 675.
Após a inicialização, uma variável de matriz é usado como qualquer outra variável no seu código:
var = pontuação máxima [0] -
Esta declaração armazena o valor do elemento da matriz de recordes [0] para var variável. Se highscore [0] é igual a 750, var é igual a 750 depois que as executa statement.
RECORDES, a versão TERRÍVEL
#include int main () {int highscore1, highscore2, highscore3-printf ("Sua maior pontuação: ") -scanf ("% d",&highscore1) -printf ("Sua segunda pontuação mais alta: ") -scanf ("% d",&highscore2) -printf ("Sua terceira maior pontuação: ") -scanf ("% d",&highscore3) -puts ("Aqui estão as suas pontuações mais altas") -printf ("# 1% dn", Highscore1) -printf ("# 2% dn", Highscore2) -printf ("# 3% dn", Highscore3) -Retornar (0) -}
Exercício 1: Reescrever o código-fonte do Pontuações Elevadas, a versão Awful, adicionando um quarto alta pontuação e usando uma matriz - mas tenha em mente que a matriz contém quatro valores, não três.
Existem muitas soluções para o Exercício 1. A solução de força bruta tem você encher cada variável de matriz individualmente, linha após linha, semelhante ao código fonte em High Scores, a versão Awful. Uma solução melhor, mais perspicaz é oferecido em High Scores, uma versão melhor.
RECORDES, uma versão melhor
#include int main () {int pontuação máxima [4] -int x-para (x = 0-xlt; 4-x ++) {printf ("Seu #% d pontuação: ", X + 1) -scanf ("% d",&highscore [x]) -} puts ("Aqui estão as suas pontuações mais altas") -para (x = 0-xlt; 4-x ++) printf ("#% D% dn", X + 1, pontuação máxima [x]) - retorno (0) -}
A maioria do código de High Scores, uma versão melhor deve ser familiar para você, embora a nova notação de matriz. Os argumentos x + 1 no printf () declarações (linhas 10 e 16) permitem que você use o X variável no circuito mas exibir o seu valor de partida com 1 em vez de 0. Embora C gosta de iniciar a numeração a 0, os seres humanos ainda preferem a partir de um.
Video: Programação C - Aula 10 - Matriz bidimensional
exercício 2: Digite o código-fonte do Pontuações Elevadas, uma versão melhor em seu editor e construir um novo projeto. Executá-lo.
Embora a saída do programa é praticamente a mesma que a saída no Exercício 1, o método é muito mais eficiente, como provado por Exercício 3 a trabalhar:
Exercício 3: Modificar o código fonte de High Scores, uma versão melhor de modo que os dez melhores pontuações são de entrada e exibido.
Imagine como você teria que codificar a resposta para o Exercício 3, se você optar por não usar arrays!
Video: Exercício de Matriz - Curso de Linguagem C #25
O primeiro elemento de uma matriz é 0.
Quando declarar uma matriz, utilizar o número total de elementos, tais como 10 por dez elementos. Mesmo que os elementos são indexados de 0 a 9, você ainda deve especificar 10 ao declarar o tamanho da matriz.