- Docente: Francesco Barchi
- Credits: 3
- Language: Italian
- Teaching Mode: Traditional lectures
- Campus: Bologna
- Corso: First cycle degree programme (L) in Mechatronics (cod. 5818)
Learning outcomes
The student learns to design an algorithmic solution of a given problem using the C language.
Course contents
Topic list:
- Operating system and terminal usage.
- Introduction to the C language and related development tools (compiling, linking, debugging).
- Numeric data, variables, constants, identifiers.
- Representation of numeric and alphanumeric data.
- Elementary instructions, control flow and I/O.
- Vectors, strings and matrices.
- Functions and language libraries.
- Aggregate types.
- File management, command line input.
- Main search and sorting algorithms on vectors.
- Dynamic allocation and recursion.
- Cross-compilation and programming on embedded devices
Readings/Bibliography
- Kernighan, Ritchie: , "C Programming Language", 2nd Ed, Pearson, 1988.
- H. M. Deitel, P. J. Deitel: "C How to Program", 8th Ed, Pearson, 2015.
Teaching methods
Examples and exercises will be conducted in the lab during the course. The course includes the use of a development environment for applications in C language mainly for PC.
Assessment methods
The assessment consists of a laboratory test that requires solving a problem by building a program in the C language in which you must demonstrate that you can actually produce an executable program.
Teaching tools
- Compiler (e.g. GCC, Clang)
- Debugger (e.g. GDB, LLDB)
- Integrated development environment (e.g. Visual Studio, XCode, CLion)
Office hours
See the website of Francesco Barchi