Tema_1_Cpp.pptx
- Количество слайдов: 24
Мова С++ Лекція 1
Умовні позначення блок-схем Початок Умова Кінець Вивідввід даних Дія
Алфавіт мови С++ літери латинського алфавіту ( A-Z, a-z) та символ підкреслення ( _ ); арабські цифри від 0 до 9; знаки арифметичних дій +, , *, /, %, ++, ; знаки побітових операцій «, » , &, |, ~, ^; знаки відношень <, <=, ==, !=, >, >=; знаки логічних операцій &&, ||, !; розділові знаки «пропуск» ; спеціальні знаки. , =, ->, ? , , $, #, ', " ; символи дужок (, ), [, ], {, }.
Структура програми #include <stdio. h> // директиви препроцесорної обробки #include ………………. опис зовнішніх змінних (вихідних даних і результатів) та функцій ………………. . функції програми ………………………. int main (int argc, char *argv[]) // головна функція { ……. …………. . /*……………………………. . ………………………………. */ ………………. return 0; } Приклад простої програми #include <stdio. h> // директиви препроцесорної обробки int main (int argc, char *argv[]) // головна функція { printf (“Hello!”); return 0; }
Правила формування ідентифікаторів допустимі символи: великі та малі літери латинської абетки, арабські цифри та символ підкреслення не може починатися з цифри і не може містити пробілів можуть мати будь яку довжину, але значимими є не більше 31 символу від початку ідентифікатора імена програмних об’єктів створюються на етапі оголошення даних не повинні збігатися з ключовими словами, а також з іменами стандартних об’єктів мови C++ не слід починати ідентифікатори із символу підкреслення, бо вони можуть співпадати з іменами системних функцій або змінних ідентифікатори типу Sumа, s. Um. А, SUMА, s. UMа вважаються різними ідентифікаторами.
Ключові слова C++ asm auto break case catch char class const continue default delete do double else enum explicit extern float for friend goto if inline int long new operator private protected public register return short signed sizeof static struct switch template this throw try typedef typename union unsigned virtual void volatile while
Базові типи даних для ПК (платформа Intel) Тип Розмір, байт Значення bool 1 true або false unsigned short int 2 від 0 до 65 535 short int 2 від 32 768 до 32 767 unsigned long int 4 від 0 до 4 294 967 295 long int 4 від 2 147 483 648 до 2 147 483 647 int (16 розрядів) 2 від 32 768 до 32 767 int (32 розряди) 4 від 2 147 483 648 до 2 147 483 647 unsigned int (16 роз рядів) 2 від 0 до 65 535 unsigned int (32 розряди) 4 від 0 до 4 294 967 295 char 1 від 0 до 256 float 4 від 1. 2 е 38 до 3. 4 е 38 double 8 від 2. 2 е 308 до 1. 8 е 308 long double 10 від 3. 4 е 4932 до 3. 4 е+4932
Опис змінних (констант): Загальний вигляд опису змінних (констант): [клас пам’яті] [const] <тип>< ім’я> [ініціювання]; ([] - необов’язкові частини синтаксичних конструкцій мови) Приклади const int n = 20, m = 5, k = 4; — ініціювання констант n, m, k цілого типу float h = 17. 5, d(5. 5), sum; — опис дійсних змінних h, d, sum, ініціювання h і d char sf ; опис символьної змінної Клас пам’яті задають такі специфікатори: auto — автоматична змінна, для якої пам’ять виділяється у стеку і за необхідності ініціюється кожного разу при виконанні оператора, що містить її визначення extern -означає, що змінна визначена в іншому місці програми (в іншому файлі або далі по тексту) і використовується для створення змінних, доступних в усіх модулях програми, де вони оголошені statiс— статична змінна, що має постійний час існування. Залежно від розташування оператора, описані статичні змінні можуть бути глобальними і локальними. register — аналогічний до специфікатора auto, але пам’ять видiляеться по можливості в регістрах процесора і за відсутності такої можливості у компілятора змінні обробляються як auto
Приклад int d; int main() { int b; extern int y; static int s; d = 1; int d; d = 10; : : d = 3; return 0; } int у = 4; //1 — глобальна змінна d //2 — локальна змінна b //3 — змінна у визначена в іншому місці програми //4 — локальна статична змінна s //5 — присвоювання значення глобальній змінній //6 — локальна змінна d //7 — присвоювання значення локальній змінній /8 — присвоювання значення глобальній змінній // 9 — визначення та ініціація змінної у
Літеральні константи Константа Цiла Формат Приклади 9, 0, 217925 Вісімковий: нуль, за яким розташовані вісімкові цифри (0, 1, 2, 3, 4, 5, 6, 7) 02, 050, 07245 Шістнадцятковий: 0 х чи 0 Х, за яким розташовані шістнадцяткові цифри (0, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, Е, F) Дійсна Десятковий: послідовність десяткових цифр (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), що починається не з нуля, якщо це не число нуль 0 x 1 B 9, 0 X 00 FF Десятковий: [цифри] Експоненціальний: [цифри][. ][Цифри]{Е|е}[+| ][цифри] 9. 7, . 001, 87. 0. 7 Е 6, . 15 е 3 9. 2, 920 е 2, 92. Е 1, . 92 Е 1 Символьна Один чи два символи, що подаються в апострофах 'А' , 'ю' , ' * ' , 'db' , ’ ', 'n', ’ 12', 'х07' Рядкова Послідовність символів, що подаються в лапках "RESULT", "t sum__s = x 5n"
Керуючі послідовності мови С++(escape-послідовності) Символ Опис r повернення курсора на початок стрічки n нова стрічка t горизонтальна табуляція v вертикальна табуляція ” подвійні лапки ’ апостроф \ зворотній слеш нульовий символ ? знак запитання a звуковий сигнал
Коментарі /* текст */ - багатострічковий коментар, який не може бути вкладеним // текст - однострічковий коментар до кінця стрічки Основні операції мови C++ Операції поділяються на: · унарні або одномісні — &, *, -, +, -, !, ++, --, sizeof; · бінарні або двомісні — +, -, *, /, %, «, » , &, : , ^, <, >, <=, ==, >=, !=, &&, II, =, *=, /=, %=, +=, -=, «=, » =, &=, ^=, . , ->, , , (), []; · умовну триарну або тримісну операцію — ? :
Інкремент. Декремент Інкремент (декремент) – нарощування (зменшення) числа на одиницю. префіксний: ++а; --с; постфіксний: а++; с--; a+=3; a=a+3; a*= b; b=b 1; a=a*b; a =b++; a=a b; b=b+1; ++а; або а++; а=а+1;
Функції введення і вивід даних Бібліотеки, що відповідають за організацію введеннявиводу: iostream. h - потокове введеннявиведення stdio. h - стандартизоване введеннявиведення
Форматоване введеннявивід даних Вивід printf ("рядок форматних кодів", список імен змінних); Рядок форматних кодів складається із специфікацій для кожної змінної із списку виводу. Рядок форматних кодів має вигляд: % [flags] [width] [. prec] [size_modifier] type_char Параметри у квадратних дужках є необов’язковими.
Значення параметра flags - вирівнювання даних по лівій межі поля виведення + виводити знак + для додатніх десяткових чисел (діє лише на форматний символ d). Знак мінус виводиться завжди. пробіл виводити пропуск перед числом замість знаку плюс; мінус виводиться завжди # виводити префікс для цілих чисел у вісімковій та шістнадцятковій системах числення
Значення параметра width n 0 n * кількість позицій, що відводиться для виведення даних доповнення виведення числа нулями зліва до ширини n (n ціле число) значення ширини є наступним параметром функції printf
Значення параметра prec. none дія за замовчуванням: 1 цифра для цілих типів; 6 цифр для дійсних f, e, E; всі значимі цифри для дійсних; до першого нуль символа для рядків; не діє на виведення символа. 0 дія за замовчуванням для цілих; не виводити дробової частини для дійсних f, e, E. n буде виведено n символів або цифр. * значення точності є наступним параметром функції printf
Дія параметра size_modifier Модифікатор типу Форматний символ Тип аргумента F p, s, n far вказівник N p, s, n near вказівник h d, i, o, u, x, X short int l d, i, o, u, x, X long l E, e, f, g, G double L E, e, f, g, G long double
type_char - символ перетворення даних d значенням аргументу є десяткове цiле число o вiсiмкове цiле число x, X шiстнадцяткове цiле число i цiле число у 10, 8 або 16 системi числення u беззнакове цiле число c символ s рядок символiв e, E дiйсне десяткове з експонентою (з плаваючою крапкою) f дiйсне десяткове з фiксованою крапкою g, G найбiльш короткий формат iз e або f p вказiвник (адреса в 16 вiй системi числення)
Керуючі символи Символ Призначення a викликає звуковий сигнал b повернення на позицiю влiво f перехiд на нову сторiнку n перехiд на новий рядок r перехiд на початок поточного рядка t горизонтальна табуляцiя v вертикальна табуляцiя ' апостроф " подвiйнi лапки \ зворотня коса риска ddd вiсiмковий код символу xddd шiстнадцятковий код символа нульовий (порожній) символ
Приклад #include <stdio. h> #include <conio. h> main( ) { int a, b, c; scanf ( " %d %d", &a, &b); //ввід чисел 5 и 8 с = a + b; printf ("Summa =%d n", c); getch(); //затримка } У результаті виконання програми буде виведено: ---------printf (“с=%d/tx=%. 5 f nk=%d", c, x, k); c=20 k=35 x=12. 34500
Форматоване введення даних scanf ("рядок форматних кодів", список адрес змінних); % [flag] [width] [size_modifier] type_char Рядок форматних кодів складається із специфікацій для кожної змінної із списку виводу. Специфікація форматованого виведення має вигляд: % [flag] [width] [size_modifier] type_char де flag =‘*’ - позначає пропуск введення поля даних із вхідного потоку; width – кількість символів, які будуть прочитані із вхідного потоку; size_modifier ={F|N|h|l|L}– модифікатор розміру типу; type_char ={d|D|i|I|o|O|u|U|x|X|f|e|g|E|G|c|s|p}– символ типу. scanf(" %d %f n ”, &k, &р);
Введення і вивід символьних даних Робота з символами getch(список вводу); putch(список виводу); Робота з стрічками gets(список вводу); puts(список виводу); gets(name); puts("(c) Yatzunda Yuriy, grupa KI-22");
Tema_1_Cpp.pptx