Zagadnienia z wykładu wymagane na teście
Znajomość pojęć
- programowanie proceduralne
- programowanie strukturalne
- kod maszynowy
- assembler
- linkowanie (konsolidacja)
- kompilator, proces kompilacji
- preprocesor
- interpreter, języki interpretowane (skryptowe)
- algorytm, zadanie algorytmiczne
- złożoność obliczeniowa
- deklaracja i definicja funkcji
- rekurencja, iteracja
- zmienne lokalne i zmienne globalne
- podział pamięci programu: sterta, stos, dane, kod
- wskaźnik, zmienna wskaźnikowa, typ wskaźnikowy
- nadmiar, niedomiar, zaokrąglenia wartości dla typu zmiennopozycyjnego
- typ zmiennej, rzutowanie typu
- bit, bajt, kod binarny
- priorytet i łączność operatora
- system binarny, szesnastkowy, oktalny, dziesiętny, naturalny kod binarny
- kod ASCII
Elementy języka C
- zmienne, typy zmiennych, deklaracje zmiennych
- typy proste:
char
,int
,float
,double
- typy złożone:
struct
,union
, pola bitowe, tablice jednowymiarowe - wskaźnik, zmienna wskaźnikowa
- modyfikator:
unsigned
,const
- instrukcje sterujące:
if
,else
,while
,for
,do
,goto
,switch
,case
,break
,continue
- operatory (wszystkie)
- funkcje, deklaracja i definicja funkcji, argumenty funkcji, zwracanie wartości z funkcji
- wskaźniki, zmienne wskaźnikowe, przekazywanie wskaźnika w argumencie funkcji
- tablice, przekazywanie tablic w argumentach funkcji
- struktury, dostęp do pól struktur, struktury jako argumenty funkcji
- znaki i łańcuchy znakowe
- funkcje biblioteki standardowej:
printf
,scanf
,getchar
,putchar
- dyrektywy preprocesora
#define
,#include
Na teście nie będzie pytań dotyczących zagadnień
- Historia komputerów i języków programowania
- Algorytmy i źródła programów zaprezentowanych na wykładzie