vuoi
o PayPal
tutte le volte che vuoi
ESERCIZI DI C
1A) Si scriva un programma in C che, ottenuti mediante funzione scanf() i coefficienti a e b dell’equazione ax + b = 0, ne
trovi la soluzione.
2A) Si scriva un programma in C che, ottenuti mediante funzione scanf() i coefficienti a, b e c dell’equazione ax2 + bx + c
= 0, ne trovi le soluzioni.
3A) Si scriva un programma in C che, dato l’inserimento di una banconota tra quelle disponibili da parte dell’utente,
restituisca il numero minimo di monete da €1 e €2 con il quale tale banconota può essere cambiata. Le banconote
disponibili sono da €50, €20, €10 e €5. Controllare la correttezza del dato inserito!
N.B. quando faccio un’eccezione, come in questo caso else, ricordati di mettere un return per terminare.
4A) Si debba individuare la stella più vicina tra le N stelle visibili situate in una porzione del cielo, disponendo di uno
strumento in grado di osservare contemporaneamente non più di K stelle. Lo strumento misura le distanze delle K stelle
osservate e individua quella più vicina. Sono dunque necessarie M osservazioni da parte dello strumento. Si scriva un
programma C che, ottenuti i valori di N e K, calcoli il numero M di osservazioni necessarie.
5A) Scrivere un programma in linguaggio C che, letti tre numeri interi a, b, c dallo standard input, stampi a terminale la
sequenza dei tre numeri in ordine monotono non decrescente.
1B) Scrivi un programma in C che simuli una calcolatrice. L'utente inserisce due numeri e sceglie un'operazione (somma,
sottrazione, moltiplicazione, divisione). Il programma deve continuare a chiedere operazioni finché l'utente non decide
di uscire.
2B) Scrivi un programma che, dato un numero da 1 a 7, stampi il giorno della settimana corrispondente. Continuare a
inserire numeri finché non decide di uscire.
3B) Crea un programma che calcoli il fattoriale di un numero inserito dall'utente. Il programma deve presentare un menu
con opzioni per calcolare il fattoriale, visualizzare il risultato e uscire.
4B) Scrivi un programma che chieda all'utente di scegliere un numero e permetta di visualizzare la tabellina del numero
fino a 10.
5B) Modificare il programma dell’esercizio 4 in modo che chieda all'utente di inserire due numeri per stampare un
rettangolo, dove:
• Il primo numero rappresenta quante righe ci saranno (cioè i numeri di cui calcolare la tabellina).
• Il secondo numero rappresenta quante colonne ci saranno (cioè fino a che numero si calcola la tabellina).
6B) Inserire un numero da tastiera e stampare se il numero è primo oppure no. .
1C) Scrivi un programma in C che chieda all'utente di inserire 5 numeri interi e li memorizzi in un array. Il programma deve
calcolare e stampare la somma di tutti gli elementi dell'array.
2C) Scrivi un programma che chieda all'utente di inserire 10 numeri interi in un array e poi trovi e stampi il valore
massimo tra gli elementi.
3C) Scrivi un programma che prenda in input un array di 10 numeri interi inseriti dall'utente e poi conti e stampi quanti di
questi numeri sono pari e quanti sono dispari.
4C) Scrivi un programma che permetta all'utente di inserire un array di 8 numeri interi. Il programma poi chiede un
numero da cercare nell'array e informa l'utente se il numero è presente e in quale posizione.
5C) Scrivi un programma in C che chieda all'utente di inserire due array di 5 numeri ciascuno. Il programma deve
calcolare il prodotto scalare dei due array e stampare il risultato.
6C) Scrivi un programma che chieda all'utente di inserire un array di 6 numeri e poi inverta l'ordine degli elementi
nell'array, stampando l'array invertito.
7C) Crea un programma che prenda in input un array di 10 numeri interi inseriti dall'utente, calcoli la media degli elementi
dell'array e la stampi.
8C) Scrivi un programma in C che utilizza il Crivello di Eratostene per trovare e stampare tutti i numeri primi fino a un
numero dato N. Il programma deve usare un array per segnare i numeri che non sono primi.
Descrizione del Crivello di Eratostene: Il Crivello di Eratostene è un antico algoritmo che permette di trovare tutti i
numeri primi fino a un certo limite N. Funziona nel seguente modo:
1. Si crea un array di booleani di lunghezza N+1, inizialmente tutti impostati a 1 (significa che tutti i numeri sono
potenzialmente primi).
2. Si parte dal numero 2, e si segna come 0 tutti i suoi multipli (perché non sono primi).
3. Si passa poi al successivo numero che è rimasto 1 (che sarà il numero successivo primo) e si ripete l'operazione.
4. Alla fine, gli indici che sono rimasti 1 rappresentano numeri primi.
1D) Scrivi un programma che generi un array di 10 numeri interi casuali compresi tra 1 e 100, e che utilizzi l'algoritmo
Bubble Sort per ordinarli in ordine crescente. Alla fine, stampa l'array originale e l'array ordinato.
2D) Scrivi un programma che generi un array di 15 numeri interi casuali compresi tra 1 e 200 e che utilizzi l'algoritmo
Selection Sort per ordinarli in ordine decrescente. Alla fine, stampa l'array originale e l'array ordinato.
3D) Genera un array di 20 numeri casuali compresi tra 1 e 500, ordina l'array utilizzando l'algoritmo Insertion Sort e
implementa la ricerca binaria per trovare un numero specifico inserito dall'utente.
4D) Genera un array di 30 numeri casuali compresi tra 1 e 50. Ordina l'array e poi conta quante volte ogni numero si ripete
nell'array ordinato.
1E) Scrivi un programma in C che chieda all'utente di inserire una stringa (massimo 100 caratteri) e che conti quante
vocali (a, e, i, o, u) ci sono nella stringa. Alla fine, stampa il numero totale di vocali.
2E) Scrivi un programma che chieda all'utente di inserire due stringhe (ognuna di massimo 50 caratteri). Il programma
deve indicare se le due stringhe sono uguali o diverse.
ù
3E) Scrivi un programma in C che chieda all'utente di inserire una stringa e poi converta tutti i caratteri minuscoli in
maiuscoli.
4E) Scrivi un programma che chieda all'utente di inserire una stringa e che poi inverta l'ordine dei caratteri della stringa.
Alla fine, stampa la stringa invertita.
5E) Scrivi un programma che chieda all'utente di inserire una stringa e stampi se la stringa è palindroma o meno.
1F) Scrivi un programma che implementi una funzione chiamata max() che prenda in input due numeri interi come
parametri e restituisca il maggiore tra i due. Il programma principale deve chiedere all'utente di inserire due numeri,
chiamare la funzione max() e stampare il risultato.
2F) Scrivi un programma che implementi una funzione somma_array() che prenda in input un array di numeri interi e la
sua dimensione, e restituisca la somma degli elementi nell'array. Il programma principale deve generare un array di 5
numeri interi, chiamare la funzione e stampare la somma.
3F)Scrivi un programma che implementi una funzione trova_max() che prenda in input un array di numeri interi e la sua
dimensione, e restituisca il valore massimo presente nell'array. Il programma principale deve generare un array di 10
numeri interi casuali e stampare il massimo.
4F)Scrivi un programma che implementi una funzione inverti_array() che prenda in input un array di numeri interi e la sua
dimensione, e inverta l'ordine degli elementi all'interno dell'array. Il programma principale deve generare un array di 8
numeri casuali, invertire l'array e stampare il risultato.
5F)Scrivi un programma che implementi una funzione calcola_media() che prenda in input un array di numeri interi e la
sua dimensione, e restituisca la media aritmetica degli elementi nell'array. Il programma principale deve chiedere
all'utente di inserire 5 numeri, chiamare la funzione e stampare la media.
1G) Uso dei puntatori per scambiare due variabili Scrivi un programma che scambia i valori di due variabili intere usando
un puntatore. Il programma dovrà definire due variabili, utilizzando una funzione per scambiarle tramite i puntatori.
2G) Scrivi un programma che modifica il valore di una variabile intera utilizzando un puntatore. La modifica deve
avvenire tramite una funzione.
3G) Scrivi un programma che somma gli elementi di due array di interi utilizzando l'aritmetica dei puntatori. Il risultato
della somma deve essere memorizzato in un terzo array.
4G) Scrivi una funzione che calcoli la lunghezza di una stringa senza usare la funzione strlen, ma utilizzando i puntatori.