Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S1)
specjalność: Inżynieria chmurowa

Sylabus przedmiotu Programowanie 1:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Programowanie 1
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Inżynierii Oprogramowania i Cyberbezpieczeństwa
Nauczyciel odpowiedzialny Mirosław Mościcki <Miroslaw.Moscicki@zut.edu.pl>
Inni nauczyciele Włodzimierz Chocianowicz <Wlodzimierz.Chocianowicz@zut.edu.pl>, Michał Fedorov <Michal.Fedorov@zut.edu.pl>, Krzysztof Małecki <Krzysztof.Malecki@zut.edu.pl>, Jerzy Pejaś <Jerzy.Pejas@zut.edu.pl>, Edward Półrolniczak <Edward.polrolniczak@zut.edu.pl>
ECTS (planowane) 5,0 ECTS (formy) 5,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW1 30 2,50,50zaliczenie
laboratoriaL1 30 2,50,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Brak wymagań wstępnych

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie studentów z zasadami tworzenia programów
C-2Ukształtowanie umiejętności z zakresu programowania z użyciem języka C/C++
C-3Zapoznanie studentów z procesem tworzenia oprogramowania (tworzenie projektu, kompilacja, debugowanie)

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Program jednosegmentowy1
T-L-2Deklaracja zmiennych1
T-L-3Operacje we/wy1
T-L-4Operacje arytmetyczne1
T-L-5Instrukcje warunkowe2
T-L-6Instrukcje iteracyjne2
T-L-7Debugowanie i profilowanie programów1
T-L-8Operatory, konwersja typów1
T-L-9Tablice2
T-L-10Funkcje2
T-L-11Wskaźniki2
T-L-12Dynamiczna alokacja i zwalnianie pamięci4
T-L-13Struktury2
T-L-14Listy jednokierunkowe i dwukierunkowe2
T-L-15Operacje na plikach3
T-L-16Dyrektywy preprocesora3
30
wykłady
T-W-1Struktura programu. Projekt, interpreter, kompilator, uruchamianie programu.1
T-W-2Pliki nagłówkowe linkowanie bibliotek1
T-W-3Podstawowe typy danych.1
T-W-4Operacje we/wy. Wyrażenia arytmetyczne.1
T-W-5Łańcuchy znaków1
T-W-6Instrukcje warunkowe2
T-W-7Instrukcje iteracyjne2
T-W-8Debuger, Profiler1
T-W-9Operatory, konwersja typów2
T-W-10Tablice2
T-W-11Podprogramy2
T-W-12Wskaźniki, arytmetyka wskaźników3
T-W-13Dynamiczna alokacja i zwalnianie pamięci3
T-W-14Struktury2
T-W-15Operacje na plikach3
T-W-16Listy, dyrektywy preprocesora3
30

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Udział w laboratoriach30
A-L-2Praca własna33
63
wykłady
A-W-1Udział w wykładach30
A-W-2Praca własna31
A-W-3Uczestnictwo w konsultacjach2
63

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład
M-2Ćwiczenia laboratoryjne

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Wejściówka - Pozwala ocenić przygotowanie studenta do zajęć laboratoryjnych
S-2Ocena formująca: Ocena poprawności wykonania zadania realizowanego na zajęciach
S-3Ocena podsumowująca: Egzamin pisemny
S-4Ocena formująca: Ocena poprawności wykonania zadań realizowanych poza zajęciami

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C02.1_W01
Student zna i rozumie podstawowe konstrukcje języka programowania C/C++ oraz potrafi rozpoznać i zdefiniować problem a także zaimplementować go w języku C/C++
I_1A_W05C-1, C-2T-W-1, T-W-3, T-W-4, T-W-6, T-W-7, T-W-10, T-W-15, T-W-12, T-W-16, T-W-11, T-W-8, T-W-14, T-W-13, T-W-9M-1, M-2S-1, S-2, S-3, S-4

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C02.1_U01
Student potrafi od podstaw zaprojektować i zaimplementować dany algorytm w postaci programu w języku C/C++ oraz potrafi właściwie wykorzystać różne biblioteki programistyczne do stworzenia efektywnie działającej aplikacji.
I_1A_U06, I_1A_U05C-2T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-12, T-L-9, T-L-10, T-L-11, T-L-8, T-L-13, T-L-14, T-L-16, T-L-15, T-L-1M-1, M-2S-2, S-4, S-1

Zamierzone efekty uczenia się - inne kompetencje społeczne i personalne

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C02.1_K01
W wyniku przeprowadzonych zajęć student nabędzie następujące postawy: kreatywność w tworzeniu programów, zdolność do posługiwania się dokumentacją techniczną języka programowania
I_1A_K01C-1, C-2, C-3T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-12, T-L-9, T-L-10, T-L-11, T-L-8, T-L-13, T-L-14, T-L-16, T-L-15, T-L-1, T-W-15, T-W-1, T-W-12, T-W-13, T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-W-9, T-W-10, T-W-11, T-W-14, T-W-16M-1, M-2S-1, S-2, S-3, S-4

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C02.1_W01
Student zna i rozumie podstawowe konstrukcje języka programowania C/C++ oraz potrafi rozpoznać i zdefiniować problem a także zaimplementować go w języku C/C++
2,0
3,0Student zna instrukcje warunkowe oraz pętle języka C/C++
3,5Student zna instrukje warunkowe, pętle oraz operatory występujące w języku C++
4,0Student potrafi posługiwać się strukturami w języku C/C++, zna definicje struktury, potrafi wynienić wszystkie typy danych występujące w języku C/C++, zna instrukje warunkowe, pętle oraz operatory
4,5Student potrafi posługiwać się funkcjami w języku C/C++, zna sposoby przekazywania argumentów do funkcji, potrafi posługiwać się strukturami w języku C/C++, zna definicje struktury, potrafi wynienić wszystkie typy danych występujące w języku C/C++, zna instrukje warunkowe, pętle oraz operatory
5,0Student potrafi dynamicznie przydzielać pamięć oraz posługiwać się wskaźnikami, potrafi posługiwać się funkcjami w języku C/C++, zna sposoby przekazywania argumentów do funkcji, potrafi posługiwać się strukturami w języku C/C++, zna definicje struktury, potrafi wynienić wszystkie typy danych występujące w języku C, zna instrukje warunkowe, pętle oraz operatory.

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C02.1_U01
Student potrafi od podstaw zaprojektować i zaimplementować dany algorytm w postaci programu w języku C/C++ oraz potrafi właściwie wykorzystać różne biblioteki programistyczne do stworzenia efektywnie działającej aplikacji.
2,0
3,0Student potrafi rozpoznać prosty problem programistyczny i zaprojektować algorytm do danego problemu oraz potrafi korzystać z funkcji zawartych w bibliotkach: iostream, stdio, stdlib.
3,5Student potrafi rozpoznać prosty problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C/C++ oraz potrafi korzystać z funkcji zawartych w bibliotkach: iostream, stdio, stdlib, string.
4,0Student potrafi rozpoznać dany problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C/C++ i bibliotek stdio, stblib oraz string oraz potrafi korzystać z funkcji zawartych w bibliotkach: iostream, stdio, stdlib, string, time, math.
4,5Student potrafi rozpoznać dany problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C/C++ i dostępnych bibliotek standardowych języka C/C++ oraz potrafi korzystać z podstawowych funkcji zawartych w dowolnych bibliotekach standardowych języka C/C++.
5,0Student potrafi rozpoznać dany problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C,C++ i dostępnych bibliotek standardowych języka C i C++ oraz potrafi korzystać z funkcji zawartych w dowolnych bibliotekach standardowych języka C/C++.

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C02.1_K01
W wyniku przeprowadzonych zajęć student nabędzie następujące postawy: kreatywność w tworzeniu programów, zdolność do posługiwania się dokumentacją techniczną języka programowania
2,0
3,0tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++
3,5tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++ oraz korzystanie z bibliotek stdio, stdlib, string.
4,0tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++, znajomość bibliotek stdio, stdlib, string, umiejętność posługiwania się wskaźnikami w programie.
4,5tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++, znajomość bibliotek stdio, stdlib, string, umiejętność posługiwania się wskaźnikami w programie oraz dynamicznego rezerwowania i zwalniania pamięci.
5,0tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++, znajomość bibliotek standardowych, umiejętność posługiwania się wskaźnikami w programie oraz dynamicznego rezerwowania i zwalniania pamięci, zdolność do posługiwania się dokumentacją techniczną języka programowania.

Literatura podstawowa

  1. Brian W.Karnighan, Dennis M.Ritchie, Język Ansi C, Helion, Gliwice, 2010, Wydanie II
  2. Jerzy Grębosz, Symfonia C++ Standard, Edition 2000, Kraków, 2008

Literatura dodatkowa

  1. Bjarne Stroustrup, Programowanie. Teoria i praktyka z wykorzystaniem C++, Helion, Gliwice, 2010
  2. Bruce Eckel, Thinking in C++. Edycja polska, Helion, Gliwice, 2002

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Program jednosegmentowy1
T-L-2Deklaracja zmiennych1
T-L-3Operacje we/wy1
T-L-4Operacje arytmetyczne1
T-L-5Instrukcje warunkowe2
T-L-6Instrukcje iteracyjne2
T-L-7Debugowanie i profilowanie programów1
T-L-8Operatory, konwersja typów1
T-L-9Tablice2
T-L-10Funkcje2
T-L-11Wskaźniki2
T-L-12Dynamiczna alokacja i zwalnianie pamięci4
T-L-13Struktury2
T-L-14Listy jednokierunkowe i dwukierunkowe2
T-L-15Operacje na plikach3
T-L-16Dyrektywy preprocesora3
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Struktura programu. Projekt, interpreter, kompilator, uruchamianie programu.1
T-W-2Pliki nagłówkowe linkowanie bibliotek1
T-W-3Podstawowe typy danych.1
T-W-4Operacje we/wy. Wyrażenia arytmetyczne.1
T-W-5Łańcuchy znaków1
T-W-6Instrukcje warunkowe2
T-W-7Instrukcje iteracyjne2
T-W-8Debuger, Profiler1
T-W-9Operatory, konwersja typów2
T-W-10Tablice2
T-W-11Podprogramy2
T-W-12Wskaźniki, arytmetyka wskaźników3
T-W-13Dynamiczna alokacja i zwalnianie pamięci3
T-W-14Struktury2
T-W-15Operacje na plikach3
T-W-16Listy, dyrektywy preprocesora3
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Udział w laboratoriach30
A-L-2Praca własna33
63
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Udział w wykładach30
A-W-2Praca własna31
A-W-3Uczestnictwo w konsultacjach2
63
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C02.1_W01Student zna i rozumie podstawowe konstrukcje języka programowania C/C++ oraz potrafi rozpoznać i zdefiniować problem a także zaimplementować go w języku C/C++
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W05Ma wiedzę o nowoczesnych metodach projektowania, analizowania, wytwarzania, testowania oprogramowania oraz rozwiązywania wybranych zadań inżynierskich obejmujących w szczególności narzędzia wspomagające wytwarzanie oprogramowania na różnych etapach powstawania, eksploatacji i rozwoju systemów informatycznych.
Cel przedmiotuC-1Zapoznanie studentów z zasadami tworzenia programów
C-2Ukształtowanie umiejętności z zakresu programowania z użyciem języka C/C++
Treści programoweT-W-1Struktura programu. Projekt, interpreter, kompilator, uruchamianie programu.
T-W-3Podstawowe typy danych.
T-W-4Operacje we/wy. Wyrażenia arytmetyczne.
T-W-6Instrukcje warunkowe
T-W-7Instrukcje iteracyjne
T-W-10Tablice
T-W-15Operacje na plikach
T-W-12Wskaźniki, arytmetyka wskaźników
T-W-16Listy, dyrektywy preprocesora
T-W-11Podprogramy
T-W-8Debuger, Profiler
T-W-14Struktury
T-W-13Dynamiczna alokacja i zwalnianie pamięci
T-W-9Operatory, konwersja typów
Metody nauczaniaM-1Wykład
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Wejściówka - Pozwala ocenić przygotowanie studenta do zajęć laboratoryjnych
S-2Ocena formująca: Ocena poprawności wykonania zadania realizowanego na zajęciach
S-3Ocena podsumowująca: Egzamin pisemny
S-4Ocena formująca: Ocena poprawności wykonania zadań realizowanych poza zajęciami
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student zna instrukcje warunkowe oraz pętle języka C/C++
3,5Student zna instrukje warunkowe, pętle oraz operatory występujące w języku C++
4,0Student potrafi posługiwać się strukturami w języku C/C++, zna definicje struktury, potrafi wynienić wszystkie typy danych występujące w języku C/C++, zna instrukje warunkowe, pętle oraz operatory
4,5Student potrafi posługiwać się funkcjami w języku C/C++, zna sposoby przekazywania argumentów do funkcji, potrafi posługiwać się strukturami w języku C/C++, zna definicje struktury, potrafi wynienić wszystkie typy danych występujące w języku C/C++, zna instrukje warunkowe, pętle oraz operatory
5,0Student potrafi dynamicznie przydzielać pamięć oraz posługiwać się wskaźnikami, potrafi posługiwać się funkcjami w języku C/C++, zna sposoby przekazywania argumentów do funkcji, potrafi posługiwać się strukturami w języku C/C++, zna definicje struktury, potrafi wynienić wszystkie typy danych występujące w języku C, zna instrukje warunkowe, pętle oraz operatory.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C02.1_U01Student potrafi od podstaw zaprojektować i zaimplementować dany algorytm w postaci programu w języku C/C++ oraz potrafi właściwie wykorzystać różne biblioteki programistyczne do stworzenia efektywnie działającej aplikacji.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U06Potrafi pozyskiwać, przesyłać, przetwarzać dane, podsumowywać wyniki eksperymentów empirycznych, dokonywać interpretacji uzyskanych wyników i formułować wynikające z nich wnioski.
I_1A_U05Potrafi zaplanować i zrealizować eksperymenty w zakresie oceny wydajności, złożoności, efektywności systemów informatycznych i ich składowych.
Cel przedmiotuC-2Ukształtowanie umiejętności z zakresu programowania z użyciem języka C/C++
Treści programoweT-L-2Deklaracja zmiennych
T-L-3Operacje we/wy
T-L-4Operacje arytmetyczne
T-L-5Instrukcje warunkowe
T-L-6Instrukcje iteracyjne
T-L-12Dynamiczna alokacja i zwalnianie pamięci
T-L-9Tablice
T-L-10Funkcje
T-L-11Wskaźniki
T-L-8Operatory, konwersja typów
T-L-13Struktury
T-L-14Listy jednokierunkowe i dwukierunkowe
T-L-16Dyrektywy preprocesora
T-L-15Operacje na plikach
T-L-1Program jednosegmentowy
Metody nauczaniaM-1Wykład
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-2Ocena formująca: Ocena poprawności wykonania zadania realizowanego na zajęciach
S-4Ocena formująca: Ocena poprawności wykonania zadań realizowanych poza zajęciami
S-1Ocena formująca: Wejściówka - Pozwala ocenić przygotowanie studenta do zajęć laboratoryjnych
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student potrafi rozpoznać prosty problem programistyczny i zaprojektować algorytm do danego problemu oraz potrafi korzystać z funkcji zawartych w bibliotkach: iostream, stdio, stdlib.
3,5Student potrafi rozpoznać prosty problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C/C++ oraz potrafi korzystać z funkcji zawartych w bibliotkach: iostream, stdio, stdlib, string.
4,0Student potrafi rozpoznać dany problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C/C++ i bibliotek stdio, stblib oraz string oraz potrafi korzystać z funkcji zawartych w bibliotkach: iostream, stdio, stdlib, string, time, math.
4,5Student potrafi rozpoznać dany problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C/C++ i dostępnych bibliotek standardowych języka C/C++ oraz potrafi korzystać z podstawowych funkcji zawartych w dowolnych bibliotekach standardowych języka C/C++.
5,0Student potrafi rozpoznać dany problem programistyczny i zaprojektować algorytm do danego problemu oraz zaimplementować go z użyciem podstawowych konstrukcji języka C,C++ i dostępnych bibliotek standardowych języka C i C++ oraz potrafi korzystać z funkcji zawartych w dowolnych bibliotekach standardowych języka C/C++.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C02.1_K01W wyniku przeprowadzonych zajęć student nabędzie następujące postawy: kreatywność w tworzeniu programów, zdolność do posługiwania się dokumentacją techniczną języka programowania
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_K01Jest gotów do krytycznej oceny posiadanej wiedzy oraz ma świadomość jej znaczenia w procesie rozwiązywania szeregu problemów inżynierskich i technicznych w dziedzinie informatyki.
Cel przedmiotuC-1Zapoznanie studentów z zasadami tworzenia programów
C-2Ukształtowanie umiejętności z zakresu programowania z użyciem języka C/C++
C-3Zapoznanie studentów z procesem tworzenia oprogramowania (tworzenie projektu, kompilacja, debugowanie)
Treści programoweT-L-2Deklaracja zmiennych
T-L-3Operacje we/wy
T-L-4Operacje arytmetyczne
T-L-5Instrukcje warunkowe
T-L-6Instrukcje iteracyjne
T-L-12Dynamiczna alokacja i zwalnianie pamięci
T-L-9Tablice
T-L-10Funkcje
T-L-11Wskaźniki
T-L-8Operatory, konwersja typów
T-L-13Struktury
T-L-14Listy jednokierunkowe i dwukierunkowe
T-L-16Dyrektywy preprocesora
T-L-15Operacje na plikach
T-L-1Program jednosegmentowy
T-W-15Operacje na plikach
T-W-1Struktura programu. Projekt, interpreter, kompilator, uruchamianie programu.
T-W-12Wskaźniki, arytmetyka wskaźników
T-W-13Dynamiczna alokacja i zwalnianie pamięci
T-W-3Podstawowe typy danych.
T-W-4Operacje we/wy. Wyrażenia arytmetyczne.
T-W-5Łańcuchy znaków
T-W-6Instrukcje warunkowe
T-W-7Instrukcje iteracyjne
T-W-9Operatory, konwersja typów
T-W-10Tablice
T-W-11Podprogramy
T-W-14Struktury
T-W-16Listy, dyrektywy preprocesora
Metody nauczaniaM-1Wykład
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Wejściówka - Pozwala ocenić przygotowanie studenta do zajęć laboratoryjnych
S-2Ocena formująca: Ocena poprawności wykonania zadania realizowanego na zajęciach
S-3Ocena podsumowująca: Egzamin pisemny
S-4Ocena formująca: Ocena poprawności wykonania zadań realizowanych poza zajęciami
Kryteria ocenyOcenaKryterium oceny
2,0
3,0tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++
3,5tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++ oraz korzystanie z bibliotek stdio, stdlib, string.
4,0tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++, znajomość bibliotek stdio, stdlib, string, umiejętność posługiwania się wskaźnikami w programie.
4,5tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++, znajomość bibliotek stdio, stdlib, string, umiejętność posługiwania się wskaźnikami w programie oraz dynamicznego rezerwowania i zwalniania pamięci.
5,0tworzenie programów z wykorzystaniem podstawowych konstrukcji języka C/C++, znajomość bibliotek standardowych, umiejętność posługiwania się wskaźnikami w programie oraz dynamicznego rezerwowania i zwalniania pamięci, zdolność do posługiwania się dokumentacją techniczną języka programowania.