Programming 2 (FRI)

Higher education teachers: Slivnik Boštjan
Credits: 6
Semester: summer
Subject code: 63278

Subject description


  • As specified by internal acts of the University of Ljubljana and Faculty of Computer and Information Science.

Content (Syllabus outline):

  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.

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

Intended learning outcomes:

Knowledge and understanding:
The ability to independently develop programs, the familiarity with basic data structures and algorithms.

Writing simple programs for solving moderate programming problems.

Understanding the basic principles of designing programs and algorithms and understanding their role in the development of large systems.

Transferable skills:
The ability to design the solution of different problems using programs and algorithms, the ability to use the presented programming concepts in an arbitrary programming language.

Learning and teaching methods:

  • Lectures, homework assignments, seminars in classes.
  • Particular emphasis is on an ongoing study and independent work with homework, tutorials and seminars.

Study materials

  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

Study in which the course is carried out

  • 1 year - 1st cycle - Multimedia