05. Array
Prerequisiti: printf(), scanf(), if/else, while, array di interi, float
Non tutti gli esercizi di questa pagina richiedono l'uso degli array che, pertanto, vanno utilizzati solo se espressamente richiesto o se effettivamente necessario.
Esercizio 1
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 100 elementi
inizializza ciascun elemento dell'array con il valore 5
incrementa ciascun elemento dell'array con il valore corrispondente alla propria posizione
stampa tutti gli elementi dell'array.
Ad esempio, supponendo che il nome dell'array sia a,
l'elemento a[3] conterrà il valore 8, somma di 5 e di 3
l'elemento a[77] conterrà il valore 82, somma di 5 e 77
────══════♦☆♦══════────
Esercizio 2
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 1000 elementi
inizializza ciascun elemento dell'array con il valore 100
a ciascun elemento dell'array somma il valore opposto alla propria posizione (N.B. l'opposto di 5 e -5)
Ricerca il minimo nell'array e ne stampa il valore
────══════♦☆♦══════────
Esercizio 3
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 10 elementi
chiede all'utente di inserire 10 valori che carica nell'array
ricerca il minimo e il massimo dell'array
stampa la somma di minimo e massimo
────══════♦☆♦══════────
Esercizio 4
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 10 elementi
chiede all'utente di inserire 10 valori che carica nell'array
effettua la somma del valore assoluto dei numeri presenti nell'array
stampa la somma precedentemente calcolata
────══════♦☆♦══════────
Esercizio 5
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 10 elementi
chiede all'utente di inserire 10 valori che carica nell'array
effettua la somma dei numeri pari presenti nell'array
stampa la somma precedentemente calcolata
────══════♦☆♦══════────
Esercizio 6
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 10 elementi
chiede all'utente di inserire 10 valori che carica nell'array
effettua la somma di tutti gli elementi presenti nell'array che risultano essere maggiori di 10
stampa la somma precedentemente calcolata
────══════♦☆♦══════────
Esercizio 7
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 10 elementi
chiede all'utente di inserire 10 valori che carica nell'array
effettua il conteggio di tutti gli elementi dell'array che risultano essere multipli di 3
stampa il valore precedentemente calcolato
────══════♦☆♦══════────
Esercizio 8
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 100 elementi
carica in ogni elemento dell'array il valore dell'indice dell'elemento (cioè in a[i] carica i)
negli elementi dell'array che contengono un numero che non è multiplo di 3 carica il valore 0
stampa tutti gli elementi dell'array
────══════♦☆♦══════────
Esercizio 9
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 20 elementi
nel primo elemento dell'array carica il valore 2
carica in ogni elemento dell'array successivo al primo, il doppio del valore dell'elemento precedente
stampa tutti gli elementi dell'array
────══════♦☆♦══════────
Esercizio 10
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 20 elementi
chiede all'utente di inserire 20 valori, tutti diversi, che carica nell'array
ricerca il più piccolo elemento dell'array
inverte l'elemento minimo, precedentemente trovato, e l'elemento in posizione 0
stampa tutti gli elementi dell'array
────══════♦☆♦══════────
Esercizio 11
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 20 elementi
chiede all'utente di inserire 20 valori, non necessariamente tutti diversi, che carica nell'array
ricerca il più grande elemento dell'array
conta quante volte il massimo, precedentemente trovato, si ripete nell'array
stampa il conteggio precedentemente ottenuto
────══════♦☆♦══════────
Esercizio 12
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 20 elementi
chiede all'utente di inserire 20 valori, tutti diversi, che carica nell'array
ricerca il più piccolo elemento dell'array
ricerca il più grande elemento dell'array
inverte gli elementi minimo e massimo, precedentemente trovati
stampa tutti gli elementi dell'array
────══════♦☆♦══════────
Esercizio 13
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 20 elementi
chiede all'utente di inserire 20 numeri positivi (almeno un numero pari e un numero dispari), che carica nell'array
ricerca il più piccolo elemento dell'array che sia un numero pari
ricerca il più piccolo elemento dell'array che sia un numero dispari
stampa la somma dei minimi precedentemente trovati
────══════♦☆♦══════────
Esercizio 14
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 20 elementi
chiede all'utente di inserire 20 numeri interi che carica nell'array
conta quanti elementi differiscono dal successivo di 5 in valore assoluto (cioè | a[i]-a[i+1] | == 5)
stampa il conteggio
────══════♦☆♦══════────
Esercizio 15
Scrivere un programma che effettua le seguenti operazioni:
definisce un array di interi di 20 elementi
chiede all'utente di inserire 20 valori, non necessariamente tutti diversi, che carica nell'array
conta quanti elementi dell'array sono strettamente maggiori del minimo e strettamente minori del massimo
stampa il conteggio
────══════♦☆♦══════────
Esercizio 16
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire una successione di numeri interi e di terminare con -1
effettua il conteggio e la somma dei numeri inseriti (ad esclusione del valore -1)
stampa il conteggio e la somma precedentemente calcolati
────══════♦☆♦══════────
Esercizio 17
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire una successione di numeri interi positivi e di terminare con -1
ricerca il minimo e il massimo tra i valori inseriti (ad esclusione del valore -1)
stampa il minimo e il massimo precedentemente individuati.
────══════♦☆♦══════────
Esercizio 18
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire una successione di numeri interi positivi e di terminare con -1
calcola quanti dei numeri inseriti sono multipli di 5 e quanti sono pari
stampa il numeri precedentemente calcolati.
────══════♦☆♦══════────
Esercizio 19
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire una successione di numeri interi (al massimo 100) e di terminare con -1
stampa i numeri precedentemente inseriti (ad esclusione del -1) procedendo in ordine inverso, cioè dall'ultimo al primo.
────══════♦☆♦══════────
Esercizio 20
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire una successione di numeri interi positivi (al massimo 100) e di terminare con -1
stampa i numeri precedentemente inseriti (ad esclusione del -1) procedendo nel seguente modo:
stampa i numeri pari
stampa i numeri multipli di 3
stampa i restanti numeri.
────══════♦☆♦══════────
Esercizio 21
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire una successione di numeri interi positivi (al massimo 100) e di terminare con -1
stampa la somma dei numeri precedentemente inseriti (ad esclusione del -1)
stampa la somma dei numeri pari
stampa il minimo inserito (ad esclusione del -1)
stampa il massimo inserito (ad esclusione del -1)
────══════♦☆♦══════────
Esercizio 22
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire una successione di numeri di tipo float e di terminare con -1.0
calcola la media dei valori inseriti
stampa il valore calcolato.
────══════♦☆♦══════────
Esercizio 23
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire un numero di tipo float
effettua la somma di 100 numeri di tipo float ottenuti a partire dal numero precedentemente inserito con incrementi di 0.1 come di seguito illustrato
x x+0.1 x+0.1+0.1 x+0.1+0.1+0.1 ...
stampa il valore calcolato.
────══════♦☆♦══════────
Esercizio 24
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire la misura del lato di un quadrato e ne calcola area e perimetro
calcola la misura della diagonale del quadrato
calcola la misura dell'area di un cerchio che ha il diametro pari alla diagonale del quadrato
stampa i valori calcolati.
Nota:
Per il calcolo della misura della diagonale si utilizzi la formula D = L * 1.414
────══════♦☆♦══════────
Esercizio 25
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire 20 numeri con parte decimale (float)
carica il contenuto in un array
costruisce un nuovo array, di dimensioni opportune, il cui elemento in posizione i-ma è dato dalla differenza a[i]-a[i+1]
effettua la somma dei valori presenti nel nuovo array e ne stampa il valore.
────══════♦☆♦══════────
Esercizio 26
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire 20 numeri con parte decimale (float)
carica il contenuto in un array
calcola il minimo e massimo presenti nell'array
calcola la media tra il minimo e massimo
calcola quanti dei numeri presenti nell'array differiscono al più di 0.6 dal valore medio
stampa il numero precedentemente calcolato.
────══════♦☆♦══════────
Esercizio 27
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire 20 numeri interi
carica il contenuto in un array
calcola la media dei valori inseriti nell'array
calcola quanti dei numeri presenti nell'array differiscono al più di 0.6 dal valore medio
stampa il numero precedentemente calcolato.
────══════♦☆♦══════────
Esercizio 28
Scrivere un programma che effettua le seguenti operazioni:
chiede all'utente di inserire 20 numeri interi
carica il contenuto in un array
ricerca il minimo e lo inserisce in posizione 0 (effettua lo swap con il valore corrispondente)
ricerca il massimo e lo inserisce in ultima posizione (effettua lo swap con il valore corrispondente)
stampa l'array
in un nuovo array ricopia tutti i valori precedentemente inseriti e li ordina in modo crescente
stampa l'array.
Suggerimento:
Utilizza l'algoritmo di ordinamento discusso qui.
Sito: 7ecnologie
Sezione: 08. C language
Capitolo: 98. Esercizi
Paragrafo: 05. Array
Indice dei capitoli: 00. Risorse - 01 Ambiente di sviluppo - 02. Introduzione al C - 03. Le librerie - 04. Tutorial - 05. Esercizi svolti - 98. Esercizi
Indice dei paragrafi: 01. Introduttivi - 02. Quesiti strutturati - 03. Interpretazione del codice - 04. Diagrammi di flusso - 05. Array - 06. Tipi numerici - 07. Programmazione strutturata - 08. Caratteri e stringhe - 09. File - 10. Numeri casuali - 11. Riepilogativi - 12. Progettazione guidata