Estratto del documento

Stringhe

1. Assunzione di string

Copiare una stringa in un’altra.

2. Copiare una stringa in un'altra

Concatenare due stringhe.

3. Concatenare due stringhe

Confrontare due stringhe.

Allocazione dinamica

1. Funzioni di allocazione

Allocazione di matrici.

File

1. Apertura, verifiche, chiusura

Lettura da file.

2. Lettura da file

Scrittura su file.

3. Scrittura su file

Controllo di fine file.

4. Manipolazione puntatori

Conteggio del numero di caratteri.

Strutture e liste

1. Aggiungere elemento (testa, coda)

Inserire elementi in ordine.

2. Inserire elementi in ordine

Ricerca di un dato nella lista.

3. Ricerca di un dato nella lista

Rimuovere elemento (testa, coda).

4. Rimuovere elemento (testa, coda)

Stampare lista.

5. Stampare lista

Funzione crea lista.

6. Funzione crea lista

Funzione cancella lista.

Programmazione

Array

1. Lascia maiuscole solo le iniziali di ogni parola

Manda a capo ogni parola.

2. Manda a capo ogni parola

Ordinamento di un array.

3. Ordinamento di un array

Parola palindroma.

4. Parola palindroma

Numeri primi.

5. Numeri primi

Crivello di Eratostene.

6. Crivello di Eratostene

Conteggio ripetizioni di ogni lettera.

7. Conteggio ripetizioni di ogni lettera

MCD e mcm.

8. MCD e mcm

Somma di due numeri binari.

9. Somma di due numeri binari

Anagrammi.

10. Anagrammi

Verifica se stringa contiene binari.

11. Verifica se stringa contiene binari

Verifica sottostringhe.

12. Verifica sottostringhe

Fibonacci.

File

1. Acquisizione di stringa da tastiera e scrittura su file

Copiare contenuto file su un altro file.

2. Copiare contenuto file su un altro file

Contare il numero di righe di un file.

3. Contare il numero di righe di un file

Contare quanti elementi numerici ci sono in un file.

4. Contare quanti elementi numerici ci sono in un file

Legge interi da file e scrive su un altro.

Liste

1. Somma due liste in una terza

Data una lista crea seconda lista con elementi invertiti.

2. Data una lista crea seconda lista con elementi invertiti

Ordinamento elementi con BubbleSort.

3. Ordinamento elementi con BubbleSort

Conta numero di elementi comuni a due liste.

RICORDARSI DI INCLUDERE !!! #include string.h

Assunzione di string

assumere string

scanf ("%s", frase) // salva la stringa fino al primo spazio che trov

%s non può essere usato se si vuole inserire una stringa con spazi

scanf ("%[^\n]", frase) // assume stringa fino all’invio

printf ("%s", frase) // stampa anche spazi

Migliore metodo assumere stringa!

for(i=0; (str1[i]=getchar())!='\n' && (i

str1[i]='\0'

printf ("%s", str1) // si può stampare con %s, stampa anche gli spazi

Assumere stringa fino a immissione di carattere preciso

unsigned int counter = 0

do scanf("%c", &carattere)

if (carattere != '#')

stringa[counter] = carattere

counter++

} while (counter<10 && carattere != '#')

2. Copiare una stringa in un'altra

Copia str2 in str (funzione strcpy)

strcpy (str1, str2) // copia la seconda stringa nella prima string

il valore presente nella prima stringa viene perso!

Copia str2 in str (implementato)

for(i=0; (str1[i]=str2[i])!='\0'; i++)

Copia primi n caratteri di str2 in str1 (funzione strncpy)

strncpy (str1, str2, n)

Copia primi n caratteri di str2 in str1 (implementato)

for(i=0; (str1[i]=str2[i])!='\0' && (i

3. Concatenare due stringhe

Concatena str1 e str2 in str (funzione strcat)

strcat (str1, str2) // le stringhe vengono concatenate attaccate (bisogna aggiungere spazio)

Concatena str1 e str2 in str (implementato)

for(i=0; (str1[i])!='\0'; i++)

for(j=0; (str1[i]=str2[j])!='\0'; i++, j++)

Concatena i primi n caratteri di str2 in str1

strncat (str1, str2, n)

4. Confrontare due stringhe

Confronta str1 con str (funzione strcmp)

strcmp (str1, str2)=0 se str1 == str
<0 se str1 < str
>0 se str1 > str

Codice:

if (strcmp (str1, str2) == 0)

printf ("Le due stringhe sono uguali");

} else if (strcmp (str1, str2) < 0)

printf ("%s < %s ", str1, str2);

} else

printf ("%s > %s ", str1, str2);

Confronta str1 con str (funzione strcmp)

for(i=0; (prima[i] == seconda[i]) && (prima[i] != '\0') && (seconda[i] != '\0'); i++)

if(prima[i]==seconda[i])

printf("Sono uguali\n");

else if(prima[i]>seconda[i])

printf("La prima è maggiore della seconda\n");

else

printf("La seconda è maggiore della prima\n");

Allocazione dinamica

RICORDARSI DI INCLUDERE !!! #include stdlib.h

1. Funzioni di allocazione

Funzione di allocazione e inizializzazione

apuntatore = (tipo*) calloc (n*sizeof (tipo))

Funzione di deallocazione

free (puntatore)

Funzione che passata una dimensione alloca memoria

char* alloca (int n) return (char*) malloc (n*sizeof (char))

2. Allocazione matrici

Allocazione di una matrice dinamica

int **matrice

int i

// alloco il vettore delle righe (ogni elemento è un puntatore

matrice = (int**) malloc (R*sizeof (int*))

// per ogni riga alloco le colonne

for (i=0; i<R; i++)

matrice[i] = (int*) malloc (C*sizeof (int))

// deallocazione di una matrice dinamica

// per ogni riga dealloco le colonne

for (i=0; i<R; i++)

free (matrice[i])

// dealloco il vettore delle colonne

free (matrice)

File

1. Apertura, verifiche, chiusura

Si può aprire e chiudere un file più volte nello stesso programma per aprirlo e richiuderlo in differenti modalità.

Apertura del file

int main (void)

FILE *fp // variabile di tipo puntatore a file

fp = fopen ("nome_file", "mode") // funzione di apertura

Ritorna come risultato un puntatore al file aperto

Verificare l'apertura del file

"r" = apertura in lettura (read)

NULL = se il file aperto in lettura non esiste

"w" = apertura in scrittura (write)

Se il file al momento dell'apertura non esiste verrà creato, in caso contrario il contenuto preesistente sarà sovrascritto.

Anteprima
Vedrai una selezione di 5 pagine su 19
Funzioni e pezzi di codice utili per l'esame Pag. 1 Funzioni e pezzi di codice utili per l'esame Pag. 2
Anteprima di 5 pagg. su 19.
Scarica il documento per vederlo tutto.
Funzioni e pezzi di codice utili per l'esame Pag. 6
Anteprima di 5 pagg. su 19.
Scarica il documento per vederlo tutto.
Funzioni e pezzi di codice utili per l'esame Pag. 11
Anteprima di 5 pagg. su 19.
Scarica il documento per vederlo tutto.
Funzioni e pezzi di codice utili per l'esame Pag. 16
1 su 19
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher matteo.troppina di informazioni apprese con la frequenza delle lezioni di Informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico di Milano o del prof Pilato Christian.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community