Programming c

A.A. 2023/2024
6
Crediti massimi
56
Ore totali
SSD
INF/01
Lingua
Inglese
Obiettivi formativi
L'insegnamento di propone di sviluppare la comprensione dei concetti fondamentali dei linguaggi imperativi di programmazione, di compilare semplici algoritmi e di apprendere il linguaggio di programmazione C.
Risultati apprendimento attesi
Lo studente sara' in grado di scrivere semplici programmi utilizzando il linguaggio di programmazione C.
Corso singolo

Questo insegnamento non può essere seguito come corso singolo. Puoi trovare gli insegnamenti disponibili consultando il catalogo corsi singoli.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo semestre

Programma
- The way to program: CPUs, programming languages, compilers/interpreters, errors and debugging, "Hello world" in C.
- Variables and simple data types: boolean, integer, floating point, string, complex number, pointer.
- Functions: parameters, local variables and scope, return values, recursion, pass-by-value/pass-by-reference, C mathematical functions.
- Conditionals: if and switch. Iteration: for and while. File I/O & formatting. Arrays, dynamic memory allocation, vectors and matrices, numerical algorithms.
- Derived types: struct, union, typedef, classes and objects, templates.
- Standard container types: list, queue, hash, map. Algorithms: sort, find, swap, copy, move, swap, transform, remove, shuffle.
- Advanced topics: multi-threading with OpenMP, modular programming, using external libraries
Prerequisiti
Nothing
Metodi didattici
16 hours lecture, 32 hours computer lab (total 48h). Frequency not mandatory
Materiale di riferimento
Modalità di verifica dell’apprendimento e criteri di valutazione
Written exam (students will be asked to write a C program, with documentation strings in English). The final marks will depend on number of programming errors. Extra credits (i.e. lode) depending on extra features and graphical appearance.
INF/01 - INFORMATICA - CFU: 6
Esercitazioni: 16 ore
Lezioni: 40 ore
Docente: Capra Lorenzo
Docente/i
Ricevimento:
mer-ven h 14.30
stanza 5052