Category Archives: C

I/O: array

Leggere numeri da file, elaborarli, scrivere la risposta / le risposte su file

C C++

Aritmetica

Comincia con 3+2 ma poi prova gli operatori aritmetici +, , *, /, % (resto)

C C++

Ripetizioni

Algoritmo Sequenza Singola istruzione
ciclo1
ciclo12

ciclo121

ciclo122

Selezioni

Algoritmo Traduzione Le etichette { } sono facoltative quando si controllano singole istruzioni ma…
if
if2
if32
if322
if3n
if3n2
if4
ifcio1
ifcio2 Eliminare le etichette { } sarebbe un errore!
Il codice diventerebbe identico a quello del diagramma di flusso precedente…

Ordinamento

Ordinare una sequenza di interi oppure di un certo TIPO

I/O: file

Leggere numeri da file, elaborarli, scrivere la risposta a schermo o file

C C++

stdio.h – cstdio

fclose() int fclose(FILE * stream);
feof() int feof (FILE * stream);
fflush() int fflush(FILE * stream);
fgetc() int fgetc(FILE * stream);
fgets() num è il numero di caratteri da copiare al massimo in str (compreso il carattere di fine stringa)
fopen() FILE * fopen(const char * filename, const char * mode);
fprintf int fprintf(FILE *stream, const char * format, … );
fputc int fputc(int character, FILE * stream);
fputs int fputs(const char * str, FILE * stream);
fread() size_t fread(void * ptr, size_t size, size_t count, FILE * stream);
fscanf() int fscanf(FILE * stream, const char * format, …);
fseek() int fseek(FILE * stream, long int offset, int origin);
ftell() long int ftell(FILE * stream);
fwrite() size_t fwrite(const void * ptr, size_t size, size_t count, FILE * stream);
getc()
getchar()
gets()
perror()
printf()
putc()
putchar()
puts()
remove()
rename()
rewind()

 

File

Le numerose funzioni per i file possono essere raggruppate per scopo

Leggere

fread() size_t fread(void * ptr, size_t size, size_t count, FILE * stream);
fscanf() int fscanf(FILE * stream, const char * format, …);
fgetc() int fgetc(FILE * stream);
fgets() char * fgets(char * str, int num, FILE * stream);

Scrivere

fwrite size_t fwrite(const void * ptr, size_t size, size_t count, FILE * stream);
fprintf int fprintf(FILE *stream, const char * format, … );
fputc int fputc(int character, FILE * stream);
fputs int fputs(const char * str, FILE * stream);

Ancora…

fopen() FILE * fopen(const char * filename, const char * mode);
fseek() int fseek(FILE * stream, long int offset, int origin);
ftell() long int ftell(FILE * stream);
fflush() int fflush(FILE * stream);
fclose() int fclose(FILE * stream);

Salti

Alcune istruzioni di salto sono essenziali per i linguaggi C-like

break; Termina un caso nello switch()
return; Termina la funzione (il metodo) e ritorna al chiamante
return ESPR; Termina la funzione (il metodo) e restituisce il valore dell’espressione

mentre altre sono da utilizzare solo in casi eccezionali…

break; Termina for(), while(), do…while()
break LBL; Termina e va alla label
continue; Termina l’iterazione attuale e passa al prossimo passo

Abusare di break e continue significa ritornare indietro di 40 anni, al GOTO… e alla programmazione non strutturata.

I/O: console

C C++

Per semplificare