Wprowadzenie
Cel i tematyka zajęć
Celem zajęć jest zapoznanie Państwa z podstawami programowania w języku C/C++. W czasie zajęć nauczycie się Państwo podstaw programowania oraz podstaw algorytmiki.
Korzystanie z DevC++
Zagadnienia:
- Instalacja,
- Tworzenie nowych projektów,
- Kompilacja
Ćwiczenia:
DevC++ można pobrać ze strony DevC++ https://sourceforge.net/projects/orwelldevcpp/ i zainstalować zgodnie z instrukcją https://www.youtube.com/watch?v=30NLzDCWtpU
Kompilacja z wykorzystaniem DevC++
Zagadnienia:
Na zajęciach używać będziemy kompilatora DevC++.
Ćwiczenia:
Proszę skopiować następujący kod, zapisać i skompilować:
#include
int main ()
{
puts ("Hello World!");
return 0;
}
#include
int main ()
{
printf ("Hello World!");
return 0;
}
Struktura pliku źródłowego
Jak widać na powyższych przykładach struktura plików składa się z następujących elementów:
- dyrektyw preprocesora:
- #include
- #define
- #undef
- funkcji głównej int main()
- poleceń umieszczonych w głównej funkcji pomiędzy { } (nawiasami klamrowymi).
- opcjonalnie komentarzy.
Biblioteki i dyrektywa #include
Podstawowe biblioteki:
- http://man7.org/linux/man-pages/man3/stdio.3.html | stdio.h
- http://man7.org/linux/man-pages/man3/errno.3.html | errno.h
- http://man7.org/linux/man-pages/man0/math.h.0p.html | math.h
- http://man7.org/linux/man-pages/man0/stdlib.h.0p.html | stdlib.h
Ćwiczenia:
- Co zapewnia biblioteka stdio.h
- Opisz podstawowe funkcje biblioteki stdio.h
- Co definiuje biblioteka errno.h
- Co definiuje biblioteka math.h
- Co definiuje biblioteka stdlib.h
Komentarze
W jeżyku ANSI C istnieją dwa typy komentarzy:
/*Ten komentarz
jest komentarzem
wielolinijkowym */
//ten komentarz jest traktowany jak komentarz tylko do końca linii
printf ("Tutaj już nie mamy komentarza");
Podstawowe operacje wejścia/wyjścia
Zagadnienia:
Następujące podstawowe operacje wejścia/wyjścia będą wykorzystywane na zajęciach:
- printf() wyświetla dane na ekranie
- puts() wyświetla łańcuch na ekranie
- scanf() pobiera dane z klawiatury
- getche() pobiera znak z klawiatury i daje echo
- gets() pobiera łańcuch z klawiatury
Ćwiczenia:
Proszę skopiować i przetestować działanie następującego programu:
#include stdio.h
#include conio.h
#include cstdlib
int main()
{
char imie[20];
char nazwisko[20];
int liczba;
system("cls"); //czyści ekran
printf("\nNapisz swoje imie :");
gets (imie);
printf("\nNapisz swoje nazwisko :");
gets (nazwisko);
printf("podaj ulubina liczbe :");
scanf("%d",&liczba);
printf("\n%s %s , twoja liczba to: %d",
imie,nazwisko,liczba);
getche();
return 0;
}
Pierwszy program – “Game Over”
Ćwiczenia:
- Proszę napisać program wyświetlający na ekranie napis “Game Over”
- Proszę napisać program wyświetlający na ekranie napis “Game Over” w ASCI-art
- Proszę napisać program wyświetlający pytania i pobierający odpowiedzi, a następnie wypisujący podsumowanie
- Proszę napisać program wyświetlający ASCII-art (wielolinijkowy) wybrany lub stworzony przez Państwa.
Przykłady używane na laboratoriach
Zagadnienia:
- Podstawową książką wykorzystywaną na laboratorium będzie: „Język C – podstawy programowania”, autor Paweł Mikołajczak, Uniwersytet Marii Curie-Skłodowskiej Wydział Matematyki, Fizyki i Informatyki (R)
- Dodatkową książką wykorzystywaną na laboratorium będzie: „Język ANSI C” z serii Klasyka Informatyki, autor Brian W. Kernighan, Dennis M. Ritchie, Wydawnictwo Naukowo-Techniczne (S)
- W trakcie zajęć będą Państwo pisali własne programy lub modyfikowali/rozbudowywali gotowe przykłady.