Politechnika Wrocławska, Wydział Elektroniki,
Kierunek: Informatyka (2 rok)
INE 2022 - JĘZYKI PROGRAMOWANIA 1
Ramowy program pierwszych
7 wykładów (prow. dr Marek Piasecki)
Zakres: Podstawy
języka C++ dla osób znających język PASCAL
-
Wprowadzenie: Struktura programu
źródłowego w języku C/C++. Porównanie języka C i PASCAL.
Podstawowe typy całkowite i rzeczywiste
. Definiowanie i inicjacja zmiennych prostych.
Operacje wejścia i wyjścia:
Funkcje scanf i printf.
Operatory i wyrażenia:
Operator przypisania. Operatory i wyrażenia arytmetyczne.
peratory przypisania arytmetycznego, inkrementacji i dekrementacji. Operatory
relacji, wyrażenia logiczne.
-
Podstawowe instrukcje:
instrukcja if, if-else, konstrukcja else-if.
Zagnieżdżanie instrukcji if.
Instrukcja wyboru switch. Operator warunkowy ? : .
Instrukcje iteracyjne: for, while, do-while.
Pętle zagnieżdżone. Instrukcje break i continue.
Przykłady programów z wykorzystaniem
w/w instrukcji.
-
Tablice w języku C ®
zapis indeksowy - deklaracja i inicjacja.
Operacje na tablicach z wykorzystaniem pętli for. Tablice
wielowymiarowe.
Wskaźniki: Wskaźniki
zmiennych i ich adresy, arytmetyka wskaźników.
Praca z tablicami w zapisie indeksowym i wskaźnikowym.
-
Funkcje: pojęcie funkcji. Deklaracja
i definicja funkcji. Prototyp funkcji.
Zwracanie wartości funkcji. Przekazywanie parametrów przez wartość.
Parametry funkcji:
przekazywanie parametrów funkcji przez wartość,
adres, referencję.
Zwracanie jednej i wielu wartości.
Przekazywanie zmiennych prostych, tablic, łańcuchów.
Funkcje operujące na pamięci
® <mem.h> (memset,
memcpy, memcmp, memmove, itp.)
-
Łańcuchy znaków w
języku C. Funkcje łańcuchowe (strcpy,
strcmp, strcat, strlen, itp.).
Przykłady operacji na łańcuchach.
Pliki i ich obsługa: (podejście
proceduralne) Strumienie standardowe. Wejście i wyjście dla znaków,
łańcuchów i danych formatowanych. Wejście i wyjście blokowe (binarne).
Tryb binarny i tekstowy.
-
Wskaźniki a tablice wielowymiarowe.
Tablice wskaźników, wskaźniki na tablice.
Rzutowanie wskaźników. Dostęp do dowolnego obszaru pamięci.
Wyświetlanie bajtów kodujących zmienne różnego typu.
Bezpośredni zapis do pamięci
ekranu.
Wskaźniki na funkcje. Funkcja
qsort.
-
Przykłady różnych kombinacji wskaźników
Dynamiczne przydzielanie pamięci.
Tworzenie tablic i łańcuchów o zadawanej wielkości.
Złożone struktury typu:
a) tablica wskaźników na zmienne proste,
b) tablica wskaźników na tablice /
łańcuchy o stałej wielkości,
c) dynamiczna tablica wskaźników na
dynamiczne łańcuchy.
Wykłady 8¸
14 będą prowadzone przez Panią dr Zofię Kruczkiewicz
Literatura:
Robert Lafore “Programowanie
w języku C przy użyciu Turbo C++”
Jerzy Grębosz
“Symfonia C++”
Andrzej Zalewski “Programowanie w językach
C i C++ z wykorzystaniem pakietu Borland C++”
Kris Jamsa
“Wygraj z C++”
----------------------------------------------
Bjarne Stroustrup
“Język C++ “
¬ książka napisana
przez twórcę C++
Robert Sedgewick
“Algorytmy w C ++ “
----------------------------------------------
Brian Kernigham, Dennis Ritchie
“Język ANSI C“ ¬ trochę
historii
Zagadnienia do opracowania na
laboratorium w trakcie pierwszej połowy semestru:
- Poznanie
edytora, kompilatora i debuggera Borland C++ (DOS)
- Pisanie
i uruchamianie prostych programów z użyciem:
a) zmiennych prostych oraz
instrukcji warunkowych
b) pętli i tablic (zapis indeksowy
i wskaźnikowy!)
c) definiowanie funkcji oraz przekazywanie
parametrów,
d) przetwarzanie łańcuchów,
e) tablice struktur ®
wczytywanie, wyświetlanie, wyszukiwanie, obliczenia
f) dynamiczna alokacja tablic i łańcuchów
o zadawanym rozmiarze
g) składowanie danych w pliku dyskowym
(tekst oraz binarnie)