Due-dimensionale array in C ++




двумерные массивы c++, двумерные массивы с++, многомерные массивы с++

Oltre a array monodimensionali, può essere necessario per l'uso di un array multidimensionale (bidimensionale, tridimensionale…). Questa lezione esaminerà gli array bidimensionali. Essi sono i più comuni, e il resto sono rari.

Abbiamo già discusso in precedenti articoli matrici tridimensionali e Si-stroki (array di caratteri).Ha detto, che gli elementi dell'array vengono posizionati consecutivamente in memoria – elemento per elemento. Visivamente, possono essere rappresentati come una singola riga nella memoria di dati. Per riferirsi a qualsiasi elemento della matrice, sufficiente indicare il nome e l'indice di voce. La prima differenza è una matrice bidimensionale di unidimensionale – suoi membri comprendono due indici: int arr [3][4]; Dettagli della matrice possono essere rappresentati, una tabella: 3 x 4.

двумерные массивы c++, многомерные массивы c++

Il primo nome della indice di matrice – Questo indice di riga, secondo – indice di colonna.

двумерные массивы c++, многомерные массивы c++

Dopo aver guardato queste immagini, si può dire della matrice bidimensionale così – un array di, in cui ciascun elemento dell'array è anche. int arr [3][4]; – un array di 3 elementi, ciascuno dei quali è un array di 4 elementi.

Questi array bidimensionale sono anch'essi disposti sequenzialmente nella memoria, ma riga per riga. Primo indice di riga 0 – cellule da 0th a terzi, sotto la linea con indice 1 – cellule da 0th a terzi …

Essi possono memorizzare gli elementi di array bidimensionali? per esempio, È possibile memorizzare i numeri di posti auto nel parcheggio multipiano (6 pavimenti e di ciascun 15 parcheggi). A questo scopo è necessario dichiarare un array bidimensionale int floorsAndParkings[6][15]; e scrivere nel suo numero di cellulare di posti su ogni piano. L'array bidimensionale può essere memorizzato line-Cu. per esempio: carbonizzare someStr [3][256]; Così abbiamo dichiarato un array, che memorizza 3 in termini di 256 caratteri ciascuno.

Inizializzazione di un array bidimensionale.

Scrivere i dati della matrice bidimensionale può essere quando si è dichiarata. Si consideri l'esempio di posti auto. Vediamo nel parcheggio 2 piano di 4 parcheggio su ogni. Dichiariamo un array e inizializziamo:

int floorsAndParkings[2][4] = { { 1, 2, 3, 4 }, { 1, 2, 3, 4 } };

A tale inizializzazione sembrava più leggibile, organizzare in modo:

Come ricorderete, Secondo standard C ++ 11, contrassegno = si può perdere. Le stringhe vengono inizializzati allo stesso modo:

Come visualizzare un data array bidimensionale? Si può andare un lungo cammino e fare riferimento al manuale di ogni elemento:

двумерные массивы c++, многомерные массивы c++

Conclusione matrice bidimensionale di C-stringhe sullo schermo un po 'più facile, dal momento che deve specificare solo il nome dell'indice array e stringhe. Inoltre, il flusso di uscita cout alone visualizzerà tutti gli elementi della matrice di caratteri, finché non trova ' 0'

двумерные массивы c++, многомерные массивы c++

bene! E se abbiamo bisogno di compilare e mostrare i dati di matrice int floorsAndParkings[20][100] o char someStr[50][256]? Questo può essere un lavoro ingrato dieci volte facilitano, con cicli. Più precisamente cicli annidati.

Si consideri l'esempio di un parcheggio. Visualizza il parcheggio schema utente: pavimenti e parcheggi. Per prenotare un posto, si deve scegliere il numero del piano e il numero di posto. dopo la prenotazione, – scrivere il valore 0 nella cella appropriata, ciò significherebbe “il posto occupato da”.

abbiamo usato per il ciclo ,sulle linee 15 – 24, per la scrittura dei dati nella matrice e contemporaneamente li visualizza sullo schermo. Se presente questo array bidimensionale come una tabella – l'anello esterno per Passa gli indici di linee – 0-b per 6-b. ciclo nidificato – da indice della colonna (le celle di righe della tabella) – 0-al suo 9-j. linee 32 – 82 ciclo è fare durante. Il suo ruolo nella, nuovo e di nuovo offre il libro posto auto, mentre è necessario per l'utente. Ci sono due cicli annidati fare durante. Attuano i piani selezioni e parcheggi con protezione contro i valori di input errati. linee 57 – 81 comprendono blocco se altro , che, nel caso di una corretta scelta dell'utente visualizza un messaggio circa il successo prenotazione. Se il posto è occupato (cella contiene un valore 0) – notificare, Offre una gamma di pavimento e ripetere il sito e visualizza il sistema di parcheggio aggiornato, che ha segnato posti riservati.

Funziona in questo modo:

двумерные массивы c++, многомерные массивы c++

estensione…

двумерные массивы c++, многомерные массивы c++

Vi consiglio di guardare il video. array bidimensionali con 13 minuti.

Propongo di risolvere diverse attività su Due-dimensionale array.

condividere link ad articoli dal nostro sito con i tuoi amici sul social network. pulsanti sociali. le reti di cui all'articolo. grazie in anticipo!

Newsletter nuove lezioni sulla programmazione:

Due-dimensionale array in C ++
4.8 (96.67%) 6 voti

21 pensieri su "Due-dimensionale array in C ++

  1. Perché quando si controlla l'array togliamo dal pavimento e unità di posto auto?
    (floorsAndParkings[pavimento – 1][parcheggio – 1])

    1. Poiché la numerazione inizia dalla matrice di celle 0. per esempio: Un uomo entra nella stanza 7 - abbiamo bisogno di controllare la casella 6.

  2. Perché ho ottenuto un errore “errore : ricerca del nome di ‘f’ cambiate per ISO ‘per’ scoping [-fpermissive]”.

Lascia un Commento

L'indirizzo email non verrà pubblicato. i campi richiesti sono contrassegnati *