The specific objectives of this course are:
Furthermore, with reference to the so-called Dublin Descriptors, this course contributes to acquiring the following software skills:
Knowledge and understanding:
The primary objective of the course is identified in the acquisition by the students of the "philosophy" of structured programming, as well as in the detailed knowledge of the syntax and semantics of the C programming language. The course pays particular attention to the development of well written and well structured C code.
Applying knowledge and understanding:
It is intended to provide students with the following skills:
Autonomy of judgment (making judgments).
Through the examination of numerous code examples and a substantial practical component that involves the development of computer exercises, the learner will be able, both autonomously and cooperatively, to analyze problems, design and implement the related software solutions.
Communication skills.
The student will acquire the necessary communication skills and expressive appropriateness in the use of technical verbal language in the context of computer programming.
Learning skills.
The course aims to provide the learner with the necessary theoretical and practical methodologies to be used in research and professional contexts with particular attention to the physical field.
Lectures and PC exercises.
The concept of algorithm
The concept of programming
Overview of programming languages
Difference between interpreters and compilers
The organization of memory in a processing system
Overview of the C language
The concept of variable
The sizeof operator
Header files
Stages of compilation
Errors and warnings
Type of C basic data and their modifiers
Constants Enumerations
I / O of a program
Expressions and mathematical functions
Type conversions
Overflow and underflow
Assignment operators
Unary operators
Mathematical functions
Random values
Conditional execution: IF
Logical operators
Conditional execution: SWITCH
Iterative execution: WHILE, FOR and DO-WHILE
Vectors and matrices
Characters and strings
The concept of indentation of the code
Comma operator
Ternary operator
Discussion on the endianess
The system function
Bitwise operators
Text files and binary files
Pointers Distinctions between pointers and vectors
Pointers arithmetic
Functions on byte blocks
The functions in C.
Prototype
Local variables
Parameters and return value
Current and formal parameters
Explicit and implicit parameter switching
Static variables
The recursion
Data structures and union
The typedef operator
Introduction to the preprocessor C
Dynamic allocation of memory
Pointers to memory functions
Any C book