Programming 2

Subject description

  1. Introduction to C programming language.
  2. Basic data types and basic control structures.
  3. Program design and debugging.
  4. Pointers and arrays (part 1).
  5. Pointers and arrays (part 2).
  6. Functions and parameter passing.
  7. Dynamic memory allocation.
  8. Strings.
  9. Input-output operations.
  10. Structures.
  11. Simple sorting algorithms.
  12. Recursion and backtracking (part 1).
  13. Recursion and backtracking (part 2).
  14. Preprocessor.

The subject is taught in programs

Objectives and competences

The goal of the course is to widen the programming skills by learning the most basic and advanced programming techniques.

General competences:

  • Developing skills in critical, analytical and synthetic thinking
  • The ability to understand and solve professional challenges in computer and information science
  • The ability to apply acquired knowledge in independent work for solving technical and scientific problems in computer and information science; the ability to upgrade acquired knowledge

Subject-specific competences:

  • Basic skills in computer and information science, which includes basic theoretical skills, practical knowledge and skills essential for the field of computer and information science
  • Basic skills in computer and information science, allowing the continuation of studies in the second study cycle

Teaching and learning methods

Lectures, home works, seminar works during tutorials. The emphasis is on continuous study and homeworks.

Expected study results

After the completion of the course a student will be able to:

  • solve mediumlevel programming exercises;
  • write programs in C programming language;
  • understand lowlevel programming techniques;
  • use recursion to solve programming problems;
  • use pointers to write efficient programs;
  • manage dynamic memory allocation and deallocation;
  • use recursive data structures;
  • use system calls in the C programming language;
  • write C programs consisting of multiple compilation units.

Basic sources and literature

  1. B. W. Kernighan, D. Ritchie: Programski jezik C, Fakulteta za računalništvo in informatiko, 1994.
  2. T. Dobravec: abC, Fakulteta za računalništvo in informatiko, 2010.
  3.  A. Kavčič, M. Privošnik, C. Bohak, M. Marolt, S. Divjak: Programiranje in algoritmi skozi primere, Založba FE in FRI, 2010

Stay up to date

University of Ljubljana, Faculty of Electrical Engineering Tržaška cesta 25, 1000 Ljubljana

E: T:  01 4768 411