Fundamentals of Computer Programming (the English translation of "Fondamenti di programmazione")
Teacher
prof. Pier Luca MONTESSORO
Credits
6 CFU
Language
Italian
Objectives
Introduction to computer science. Structured programming in C language.
Acquired skills
- Fundamentals of information processing: algorithms, programming languages, data encoding, computer systems architecture (basics).
- C language basics: syntax, I/O, primitive data types, control flow, structured data types, functions, files.
- Programming principles and techniques: modular programming, software life cycle, program qualities.
Lectures and exercises (topics and specific content)
Algorithms: course syllabus, the algorithm concept, algorithm examples (2 hours).
Flow charts: the flow chart language, examples of algorithms coded as flow charts (2 hours).
Computer systems: computer architecture basics, binary notation, binary encoding of numbers and characters (4 hours).
C language syntax: basic syntax of the C language, expressions and statements, primitive data types, type casting, loop control structures, type modifiers, auxiliary assignment operators (8 hours).
Tools for C programming: the C compiler, how to install and use the compiler, writing simple programs: I/O sequences, greatest common divisor (4 hours).
Functions: functions, parameters and arguments, returned values, local variables, value and reference parameter passing, array parameters, struct parameters (10 hours).
Data structures: data structure basics, arrays, matrices, records, strings, string library functions (10 hours).
Files: file opening and closing, reading and writing from/to a text file, character processing (6 hours).
C language and operating system: command line arguments, limits.h (2 hours).
Exercises (20 hours).
Labs (12 hours).
References
- Deitel e Deitel, C Corso completo di programmazione, Apogeo
Type of exam
Written
Additional material or information on line