PODSTAWY INFORMATYKI 1 PRACOWNIA NR 2



Podobne dokumenty
Menu główne programu: Projekt: Dodaj do projektu - dodanie istniejącego pliku do projektu,

METODYKI I TECHNIKI PROGRAMOWANIA 1 FOLIE NR 1

2 Przygotował: mgr inż. Maciej Lasota

Informatyka, Ćwiczenie Uruchomienie Microsoft Visual C++ Politechnika Rzeszowska, Wojciech Szydełko. I. ZałoŜenie nowego projektu

RODOWISKO DEV-C++ Wymagania sprz towe (zalecane): - Microsoft Windows 2000, XP - 32 MB RAM MHz Intel compatible CPU, 200 MB free disk space

Zmienne, stałe i operatory

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

1 Podstawy c++ w pigułce.

Podstawy programowania C. dr. Krystyna Łapin

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

ZMIENNE P R O G R A M O W A N I E C + +

1 Podstawy c++ w pigułce.

Wyrażenia arytmetyczne

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Proste typy zmiennych języka C++ *) Zapis 3.4 e-38 jest równoważny zapisowi 3,

Metodyki i Techniki Programowania MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA

Języki i metodyka programowania. Wprowadzenie do języka C

Podstawy programowania skrót z wykładów:

1. Wprowadzanie danych z klawiatury funkcja scanf

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Część 4 życie programu

I - Microsoft Visual Studio C++

J ZYK C: STAŁE I ZMIENNE, TYPY DANYCH, OPERATORY I WYRA ENIA ARYTMETYCZNE

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

INFORMATYKA Studia Niestacjonarne Elektrotechnika

Programowanie strukturalne i obiektowe

Wstęp do Programowania, laboratorium 02

OPERACJE WEJŚCIA / WYJŚCIA. wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout)

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 12. Karol Tarnowski A-1 p.

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Laboratorium 1: Podstawy języka c. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Język C część 1. Sformułuj problem Zanalizuj go znajdź metodę rozwiązania (pomocny może byd algorytm) Napisz program Uruchom i przetestuj czy działa

Język ludzki kod maszynowy

Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1

Wykład I. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Wstęp do programowania

operator zmiany znaku operatory mnożenia, dzielenia, dzielenia modulo operatory dodawania, odejmowania

Funkcje matematyczne w C. Programowanie w C Marek Pudełko

Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Powtórka algorytmów. Wprowadzenie do języka Java.

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.

#include <stdio.h> void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta Strona 1 z 26. Powrót. Full Screen. Zamknij.

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Struktury, unie, formatowanie, wskaźniki

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Algorytmika i Programowanie VBA 1 - podstawy

Spis treści JĘZYK C - OPERACJE WE-WY, ZMIENNE, TYPY I NAZWY ZMIENNYCH, OPERATORY I WYRAŻENIA ARYTMETYCZNE, FUNKCJE MATEMATYCZNE.

Powtórka algorytmów. Wprowadzenie do języka Java.

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Programowanie I C / C++ laboratorium 01 Organizacja zajęć

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

dr inż. Jarosław Forenc

Język C zajęcia nr 11. Funkcje

Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1

Teksty Liczby Formuły. Operatory. dr inż. Jarosław Forenc. Pasek narzędzi. Pasek narzędzi. (Atrybuty komórek)

Adres komórki-nazwa kolumny i nazwa wiersza, na przecięciu których znajduje się komórka. B3- adres aktywnej komórki

Stałe. Funkcje standardowe. Niektóre stałe i funkcje z pliku nagłówkowego math.h. M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2

Wstęp do programowania

Proces tworzenia programu:

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,

Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory

Wstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy. Laboratorium 1. Karol Tarnowski A-1 p.

Podstawy programowania w języku C i C++

Laboratorium 1. I. Zainstaluj program Eclipse (wersja C/C++ w odpowiednim systemie operacyjnym

Spis treści JĘZYK C - OPERACJE WE-WY, ZMIENNE, TYPY I NAZWY ZMIENNYCH, OPERATORY I WYRAŻENIA ARYTMETYCZNE, FUNKCJE MATEMATYCZNE.

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

3 Przygotował: mgr inż. Maciej Lasota

utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,

Wprowadzania liczb. Aby uniknąć wprowadzania ułamka jako daty, należy poprzedzać ułamki cyfrą 0 (zero); np.: wpisać 0 1/2

Programowanie strukturalne język C - wprowadzenie

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Podstawy i języki programowania

Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja!

Na ekranie monitora zostaną wyświetlone w dwu liniach teksty Pierwsza linia Druga linia

Programowanie strukturalne. dr inż. Tadeusz Jeleniewski

Elementarne wiadomości o języku C

AKADEMIA GÓRNICZO-HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE. QuIDE Quantum IDE PODRĘCZNIK UŻYTKOWNIKA

Podstawy programowania w języku C

Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

Klasyfikacja typów w C++

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Wstęp do programowania. Wykład 1

Transkrypt:

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 2 TEMAT: Obsługa pakietu - środowiska do tworzenia, analizy i uruchomienia programów w języku C/C++: Dev-C++. Ogólna struktura programu w języku C, stałe i zmienne, typy danych, operatory matematyczne, wyrażenia arytmetyczne. Środowisko Dev-C++: - produkcja: Bloodshed Software - internet: www.bloodshed.net - licencja: Free Software distributed under the GNU General Public License - wersja: 5.0 beta 9.2 (4.9.9.2) (9.0 MB) with Mingw/GCC 3.4.2 - download: http://prdownloads.sourceforge.net/dev-cpp/devcpp- 4.9.9.2_setup.exe Wymagania sprzętowe (minimalne): - Microsoft Windows 95, 98, NT 4, 2000, XP - 8 MB RAM with a big swapfile - 100 MHz Intel compatible CPU, 30 MB free disk space Wymagania sprzętowe (zalecane): - Microsoft Windows 2000, XP - 32 MB RAM - 400 MHz Intel compatible CPU, 200 MB free disk space Domyślna instalacja: - ok. 60 MB Wybrane cechy: - środowisko typu IDE (ang. Integrated Development Environment) dla języka C/C++, - umożliwia stworzenie programów typu: - Windows application - program dla systemu Windows wykorzystujący Win32 API, - Console application - program uruchamiany w konsoli (oknie tekstowym), - Static library - biblioteka statyczna, - DLL - biblioteka dynamiczna (ang. Win32 Dynamic Link Library), - polskojęzyczne menu. - 1 -

Okno główne programu 1 2 3 4 5 6 1 - Menu główne programu 2 - Paski narzędzi (Główny, Edycja, Przeszukiwanie, Projekt, Kompilowanie i uruchamianie, Opcje, Dodatki, Klasy) 3 - Przeglądarka projektu / klas 4 - Edytor 5 - Pasek Zakładek 6 - Pasek stanu - 2 -

Menu główne programu: - zawiera wszystkie polecenia programu, - dostęp do wybranych pozycji w menu możliwy jest także poprzez przyciski na pasku narzędzi, skróty klawiszowe (ang. hot keys) i menu kontekstowe. Paski narzędzi: - zawierają najczęściej wywoływane polecenia programu. Główny: Projekt... - stworzenie nowego projektu, Otwórz projekt lub plik... (Ctrl+O) - otwarcie istniejącego pliku lub projektu, Plik źródłowy (Ctrl+N) - stworzenie nowego pustego pliku i ewentualne dodanie go do projektu - nowy plik otrzymuje domyślnie nazwę BezNazwyx, gdzie x jest kolejnym numerem, Zapisz (Ctrl+S) - zapisanie edytowanego pliku, Zapisz wszystko - zapisanie wszystkich otwartych plików, Zamknij (Alt+F4) - zamknięcie edytowanego pliku, Drukuj (Ctrl+P) - wydrukowanie edytowanego pliku. Edycja: Cofnij (Ctrl+Z) - cofnięcie ostatniej operacji edytorskiej, Powtórz (Shift+Ctrl+Z) - powtórzenie ostatniej operacji edytorskiej. Przeszukiwanie: Znajdź (Ctrl+F) - wyszukanie ciągu znaków, Zamień (Ctrl+R) - wyszukanie i zamiana ciągu znaków, Szukaj ponownie (F3) - ponowne szukanie ciągu znaków, Przejdź do wiersza... (Ctrl+G) - przejście w edytowanym pliku do wiersza o podanym numerze. - 3 -

Projekt: Dodaj do projektu - dodanie istniejącego pliku do projektu, Usuń z projektu - usunięcie pliku z projektu, Opcje projektu (Alt+P) - wyświetlenie opcji projektu. Kompilowanie i uruchamianie: Kompiluj (Ctrl+F9) - kompilacja programu, Uruchom (Ctrl+F10) - uruchomienie wcześniej skompilowanego programu, Kompiluj i uruchom (F9) - kompilacja i uruchomienie programu, Przebuduj wszystko (Ctrl+F11) - ponowna kompilacja wszystkich plików tworzących projekt, Odpluskwiaj (F8) - uruchomienie odpluskwiania programu. Opcje: Indeks pomocy Dev-C++ - uruchomienie systemu pomocy, O Dev-C++... - wyświetlenie informacji o programie. Dodatki: Zawiera cztery opcje: - Plik źródłowy (Ctrl+N), - Projekt, - Plik zasobów, - Szablon... Zawiera dwie opcje: - Data/Czas - wstawia do pliku źródłowego aktualną datę i czas w postaci: dd-mm-yy hh:mm, - Komentarz nagłówkowy - wstawia do pliku źródłowego nagłówek zawierający pola: Name, Copyright, Author, Date, Description, Umożliwia zdefiniowanie w pliku źródłowym do 9 zakładek, Umożliwia przejście do wcześniej zdefiniowanych zakładek. - 4 -

Przeglądarka projektu / klas: - zawiera trzy zakładki: Projekt, Klasy, Odpluskwiacz. Zakładka Projekt Zakładka Klasy Zakładka Odpluskwiacz Zakładka Projekt: - zawiera listę wszystkich plików tworzących projekt (jeśli projekt nie został stworzony, to zakładka ta jest pusta), - kliknięcie nazwy pliku na liście powoduje otwarcie go w edytorze. Zakładka Klasy: - zawiera listę klas, struktur, funkcji i zmiennych globalnych zdefiniowanych w programie, - kliknięcie wybranej nazwy powoduje przeniesienie w edytorze kursora do miejsca deklaracji wybranego elementu. Zakładka Odpluskwiacz: - w zakładce tej wyświetlane są wartości zmiennych obserwowanych podczas odpluskwiania programu. Edytor: - umożliwia jednoczesną edycję kilku plików źródłowych, każdy plik wyświetlany jest na oddzielnej zakładce, - umożliwia wykonywanie typowych operacji edytorskich, np. zaznaczanie, wycinanie, kopiowanie, zastępowanie tekstu, - 5 -

- wyświetla kod źródłowy odpowiednio kolorując go (np. słowa kluczowe języka C są pogrubione, łańcuchy znaków mają kolor czerwony zaś dyrektywy preprocesora - zielony), - jeśli edytowany plik zmienił się, ale nie został zapisany na dysku, to przed nazwą pliku pojawia się symbol [*]. Kompilator: - wyświetla listę błędów, które wystąpiły podczas kompilacji programu. Log kompilacji: - wyświetla przebieg kompilacji programu zawierający wszystkie wywoływane polecenia. Odpluskwiacz: - zawiera polecenia wykorzystywane podczas odpluskwiania programu. - 6 -

Wyniki poszukiwań: - zawiera wyniki poszukiwań wyrażeń, ale tylko wtedy, gdy dotyczy ono kilku plików. Pasek stanu: Liczba wierszy w edytowanym pliku Wstaw / Nadpisz - tryb edycji (Wstawianie / Nadpisywanie) Pojawienie się słowa Modyf. oznacza, że edytowany plik zmienił się, ale nie został zapisany na dysku Pozycja kursora w edytowanym pliku (numer wiersza i numer kolumny) Przykład programu w języku C #include <stdio.h> int main(void) { printf( Witaj swiecie\n ); } return 0; - 7 -

Ogólna struktura programu w języku C/C++ #include <....h> - dołączenie pliku nagłówkowego, int main() - główna funkcja programu, zawsze musi występować { w programie, można nie podawać typu int (jest to... domyślny typ wartości zwracanej przez funkcję),...... - treść programu, return (0); - wartość zwracana przez funkcję main, wartość } można zapisać także bez nawiasów, np. return 0; Komentarze /* komentarz w języku C i C++ */ // komentarz do końca linii tylko w języku C++ Zmienne - służą do reprezentacji danych, mogą przyjmować różne wartości, - zbiór wartości jakie mogą przyjmować zmienne nazywa się typem, - zmienne przechowywane są w pamięci operacyjnej komputera, więc każda z nich posiada swój adres, - aby móc skorzystać z danej zmiennej trzeba ją zadeklarować. Deklarowanie zmiennych int a; średnik nazwa zmiennej nazwa typu int a; float b,c; Elementarne typy arytmetyczne nazwa typu zakres wartości danych rozmiar * uwagi char -128... 127 1 małe liczby całkowite, znaki ASCII int -32768 32768 2 liczby całkowite float -3,4 10-38 3,4 10 38 4 liczby rzeczywiste, 7 cyfr znaczących double -1,7 10-308 1,7 10 308 8 liczby rzeczywiste, 15 cyfr znaczących * Wszystkie rozmiary podane są dla kompilatora Borland C++ 3.1-8 -

Dodatkowe słowa kluczowe: - short, long - dla typu int oznaczają krótką lub długą liczbę całkowitą, - long - dla typu double pozwala zwiększyć precyzję (liczbę miejsc po przecinku), - signed, unsigned - stosowane do typów całkowitych, określają czy zmienna ma być ze znakiem czy bez znaku. nazwa typu zakres wartości danych rozmiar * uwagi signed char = char -128... 127 1 liczby całkowite unsigned char 0 255 1 liczby całkowite signed int = int -32768 32767 2 liczby całkowite unsigned = unsigned int 0 65535 2 liczby całkowite short = signed short int -32768 32767 2 liczby całkowite short unsigned 0 65535 2 liczby całkowite = unsigned short int long = signed long int long unsigned = unsigned long int -2147483648 2147483647 4 liczby całkowite 0 4294967295 4 liczby całkowite float -3,4 10-38 3,4 10 38 4 7 cyfr znaczących double -1,7 10-308 1,7 10 308 8 15 cyfr znaczących long double 3,4 10-4932 1,1 10 4932 10 19 cyfr znaczących * Wszystkie rozmiary podane są dla kompilatora Borland C++ 3.1 Rozmiar zmiennej a kompilator Kompilator int long double Borland C++ 3.1 2 10 Dev-C++ 4 12 Microsoft Visual C++ 6.0 4 8 Borland C++ Builder 6 4 10 Nazwy zmiennych - nazwa zmiennej może składać się z liter i cyfr, pierwszym znakiem nazwy musi być litera, - znak podkreślenia traktowany jest jak litera, - jako nazw zmiennych nie można używać słów kluczowych języka C (np. if, else, int, float, class, private, this, sizeof, try, static, register). - 9 -

Deklaracje zmiennych w programie zmienne globalne #include <stdio.h> int a; double b; int main() {... return 0; } zmienne lokalne #include <stdio.h> int main() { int a; double b;... return 0; } Przypisywanie wartości zmiennej (inicjlizacja) przy deklaracji zmiennej void main() { int a = 10; float b = -10.15;... } w treści programu void main() { int a; float b,c,d;... a = 10; b = c = d = 10.12;... } = - operator przypisania Literały liczbowe Typy literałów liczbowych wynikają z formy ich zapisu i wartości jakie reprezentują. - liczby całkowite (int, long int, unsigned long int) 1 - liczba całkowita, typ int, 25000 - liczba całkowita, typ int, 39000 - liczba całkowita, typ long (bo przekracza maksymalną wartość dla typu int), 4100000000 - liczba całkowita, typ unsigned long int (bo przekracza long), Liczby całkowite można zapisywać także w formie ósemkowej (0 na początku) lub szesnastkowej (0x lub 0X na początku), np. 011-11 w systemie ósemkowym to 9 w systemie dziesiętnym, 0x11-11 w systemie szesnastkowym to 17 w systemie dziesiętnym. - 10 -

- liczby rzeczywiste (double) 1.0 - liczba rzeczywista, typ double, 1.312e2 - liczba rzeczywista 1,312 10 2, typ double, -2.124E-1 - liczba rzeczywista -2,124 10-1, typ double. Zmiana typu literału liczbowego Typy literałów liczbowych mogą być zmieniane przez programistę poprzez użycie przyrostków: - dla typów całkowitych: u lub U - wartość ma być potraktowana jako unsigned (int lub long), l lub L - wartość ma być potraktowana jako long (int lub unsigned int). - dla typów rzeczywistych: l lub L - wartość ma być potraktowana jako long double, f lub F - wartość ma być potraktowana jako float. Przykłady: 5L - liczba całkowita typu long, 4.52f - liczba rzeczywista typu float (a nie long), 2.5L - liczba rzeczywista typu long double. Literały znakowe Literały znakowe (pojedyncze znaki) zapisywane są za pomocą apostrofów, np. char c = a ; c = 1 ; Operatory arytmetyczne - jednoargumentowe: + - plus, znak liczby, - - minus, zmienia wartość wyrażenia na przeciwną, ++ - operator inkrementacji (zwiększa wartość zmiennej o 1), -- - operator dekrementacji (zmniejsza wartość zmiennej o 1). Operatory ++, -- mogą występować jako: - przedrostek (przed nazwą zmiennej): ++i, --i wartość zmiennej modyfikowana jest przed jej wykorzystaniem, - przyrostek (po nazwie zmiennej): i++, i-- wartość zmiennej modyfikowana jest po jej wykorzystaniu. - 11 -

- dwuargumentowe multiplikatywne: * - mnożenie, / - dzielenie (zastosowany do liczb całkowitych obcina część ułamkową), % - dzielenie modulo (reszta z dzielenia), może być stosowany tylko dla typów całkowitych (char, int, unsigned, long), - dwuargumentowe addytywne: + - dodawanie, - - odejmowanie. Priorytet operatorów arytmetycznych Najwyższy ++ -- + - (jednoargumentowe) Najniższy * / % + - (dwuargumentowe) W wyrażeniach arytmetycznych można oczywiście stosować nawiasy, które zmieniają priorytet operatorów. Przykłady: a = b+c; d = a*b + d*c; k = k+1; z = (a+d)*c; Operatory przypisania (złożone) Operatory te zapisywane są jako: += -= *= /= %= Zamiast i = i + 10; i = i - 20; i = i * 40; i = i / 15; i = i % 5; można napisać i += 10; i -= 20; i *= 40; i /= 15; i %= 5; - 12 -

Funkcja printf printf( tekst opcjonalny + sp_for,argumenty); Funkcja printf wyprowadza tekst, gdy w tekście występuje sp_for (specyfikator formatu) zaczynający się od %, to następuje przekształcenie - w miejsce specyfikatora wstawiana jest wartość argumentu. Liczba specyfikatorów formatu musi być zgodna z liczbą argumentów. sp_for = %[znacznik][szerokość][.precyzja][modyfikator]typ [znacznik] - + - przed liczbą stawiany jest znak (plus lub minus), - - wyrównanie wyświetlanych znaków do lewej strony, [szerokość].precyzja typ d,i u x,x o f e,e g s c - określa minimalną liczbę wyprowadzanych znaków, jeśli znaków jest mniej to pole jest z lewej strony uzupełniane spacjami, jeśli więcej - podana szerokość jest ignorowana, - liczba znaków po kropce dziesiętnej, - określa rodzaj i typ argumentu: - liczba całkowita ze znakiem, dziesiętna, - liczba całkowita bez znaku, dziesiętna, - liczba całkowita bez znaku, szesnastkowa, - liczba całkowita bez znaku, ósemkowa, - liczba rzeczywista w postaci [-]ddd.ddd, - liczba rzeczywista w formacie naukowym (z użyciem e lub E), - liczba rzeczywista (format f lub e), - ciąg znaków, - pojedynczy znak. [modyfikator] - służy do zmodyfikowania podstawowego typu podawanego przez znak typu: l - stosowany tylko do liczb całkowitych do wyświetlania wartości typu long (może stać przed d, i, o, u, x, X, o, np. %ld, %li), L - stosowany do wyświetlania wartości rzeczywistych typu long double Przykłady: int a = -10; float b = 10.23; char imie[5] = Jan ; printf( liczba1 = %d, liczba2 = %f \n,a,b); printf( Imie: %s Nazwisko: %s \n,imie, Kowalski ); - 13 -

Funkcja scanf scanf( sp_for,argumenty); Funkcja scanf wczytuje znaki ze standardowego wejścia (klawiatura), interpretuje je zgodnie z zadanym sp_for (specyfikatorem formatu) i przypisuje wyniki argumentom w odpowiedniej kolejności. sp_for = %[szerokość_pola][modyfikator]typ [szerokość_pola] - określa ile znaków zostanie przeczytanych typ - określa rodzaj i typ argumentu: d - liczba całkowita dziesiętna, typ int, D - liczba całkowita dziesiętna, typ long, o - liczba całkowita ósemkowa, typ int, O - liczba całkowita ósemkowa, typ long, x - liczba całkowita szesnastkowa, typ int, X - liczba całkowita szesnastkowa, typ long, i - liczba całkowita dziesiętna, ósemkowa lub szesnastkowa, typ int, I - liczba całkowita dziesiętna, ósemkowa lub szesnastkowa, typ long, u - liczba całkowita dziesiętna bez znaku, typ unsigned, U - liczba całkowita dziesiętna bez znaku, typ unsigned long, f,e,e - liczba rzeczywista, typ float, g,g - liczba rzeczywista, typ float, s - ciąg znaków, c - pojedynczy znak, typ char. [modyfikator] - służy do zmodyfikowania podstawowego typu podawanego przez znak typu: l L h - zmienia wszystkie typy całkowitoliczbowe na ich długie wersje; zastosowany do znaków typu f, e, E, g, G spowoduje interpretację zawartości pól wejściowych jako liczb typ double, - zastosowany do znaków typu f, e, E, g, G spowoduje interpretację zawartości pól wejściowych jako liczb typ long double, - typy całkowitoliczbowe będą traktowane jako short. Argumenty funkcji scanf są adresami obszarów w pamięci, dlatego też muszą być poprzedzone znakiem & (nie dotyczy ciągu znaków). Przykłady: int a; scanf( %d,&a); int a; float b,c; scanf( %d %f %f,&a,&b,&c); char name[20]; scanf( %s,name); - 14 -

Plik nagłówkowy math.h abs() - wartość bezwzględna (liczby całkowitej), acos() - arcus cosinus (zwraca kąt w radianach), asin() - arcus sinus (zwraca kąt w radianach), atan() - arcus tanges (zwraca kąt w radianach), cabs() - moduł liczby zespolonej, ceil() - zaokrąglenie w górę, cos() - cosinus (kąt w radianach), cosh() - cosinus hiperboliczny (kat w radianach), div() - iloraz dwóch liczb całkowitych, exp() - liczba e do potęgi argument, fabs() - wartość bezwzględna argumentu (liczby rzeczywistej), floor() - zaokrąglenie w dół, fmod() - dzielenie modulo, log() - logarytm naturalny, log10() - logarytm dziesiętny, modf() - udostępnia część całkowitą i ułamkową argumentu, pow() - funkcja wykładnicza (oblicza x do potęgi y), pow10() - udostępnia liczbę 10 do wybranej potęgi, rand() - udostępnia liczbę pseudolosową z zakresu (0... 32767), random() - udostępnia liczbę pseudolosową z podanego zakresu, randomize() - inicjacja generatora liczb pseudolosowych, sin() - sinus (kąt w radianach), sinh() - sinus hiperboliczny (kąt w radianach), tan() - tangens (kąt w radianach), tanh() - tangens hiperboliczny (kąt w radianach). M_PI - stała określająca liczbę π (π = 3,1415926...), M_E - stała określająca liczbę e (e = 2,7182818...), - 15 -