Accedere agli elementi
Fa parte della sezione Fondamenti del percorso C di Coddy. Lezione 54 di 63.
Gli array memorizzano più valori dello stesso tipo. Usiamo l'indice per accedere ai singoli elementi di un array.
In C, gli indici degli array iniziano da 0. Questo significa che il primo elemento si trova all'indice 0, il secondo all'indice 1 e così via.
Crea un array di interi con 5 elementi:
int numbers[5] = {10, 20, 30, 40, 50};Accedi al primo elemento (indice 0):
int firstElement = numbers[0];Dopo aver eseguito il codice qui sopra, firstElement contiene:
10Accedi al terzo elemento (indice 2):
int thirdElement = numbers[2];Questo memorizza il valore 30 in thirdElement.
Provare ad accedere a un elemento al di fuori dei limiti dell'array (come numbers[5] nel nostro esempio) porta a un comportamento non definito e può causare arresti anomali del programma.
Sfida
FacileScrivi una funzione chiamata getElement che:
- Accetta un array di interi e la sua dimensione come parametri
- Accetta un parametro indice
- Se l'indice è valido (entro i limiti dell'array), stampa l'elemento in corrispondenza di quell'indice
- Se l'indice non è valido (fuori dai limiti dell'array), stampa
Index out of bounds
Il parametro
indexè già a base zero: usalo direttamente comearr[index](l'indice5è il 6° elemento). Gli indici validi vanno da0asize - 1.
Provalo tu
#include <stdio.h>
void getElement(int arr[], int size, int index) {
// Scrivi qui il tuo codice
}
int main() {
int size, index;
// Leggi la dimensione dell'array
scanf("%d", &size);
int arr[size];
// Leggi gli elementi dell'array
for(int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
// Leggi l'indice a cui accedere
scanf("%d", &index);
getElement(arr, size, index);
return 0;
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
2Variabili
Tipi di datiInteroFloat - DoubleCaratteriValori booleaniCostantiFondamenti di printfRegole di denominazione delle variabiliConversione di tipo parte 1Conversione di tipo parte 2Sfida di ripasso3Operatori
Operatori aritmeticiOperatore moduloIncremento/DecrementoOperatori di assegnazioneOperatori relazionaliOperatori logici Parte 1Operatori logici Parte 2Operatori logici Parte 3Sfida di riepilogoEsercitati da solo: Compilatore C online