- •Содержание
- •1 Группа
- •1. Організація адресації ат286 в захищеному режимі.
- •2. Архітектура мп 80386.
- •3. Архітектура мп 80486.
- •4. Регістри стану й керування і486.
- •5. Архітектура та функціональні можливості Pentium.
- •6. Провести порівняльний аналіз архітектур мікропроцесорів фірми Intel.
- •7. Risc-процесори.
- •8. Архітектура сигнального мікропроцесора adsp.
- •9. Описати роботу системного таймера ibm-сумісного комп'ютера.
- •10. Класифікація мікропроцесорних наборів.
- •11. Класифікація мікропроцесорних наборів за числом віс.
- •12. Режими роботи таймерів однокристальної мікро еом Intel 8051.
- •13. Архітектура пам’яті процесорів adsp-2100.
- •14. Система команд і регістри процесорів сімейства adsp-2100.
- •15. Динамічні зп з довільною вибіркою.
- •16. Стекова адресація. Польський зворотній запис.
- •If (число)
- •17. Перетворення віртуальних адресів у фізичні.
- •18. Адресний простір еом. Способи адресації операндів.
- •19. Оперативна пам’ять. Організація та принципи управління.
- •20. Система переривань та її характеристики.
- •21. Формування фізичної адреси з логічної у реальному режимі.
- •22. Формування фізичної адреси з логічної у 386 захищеному режимі.
- •23. Підсистема керування оперативної пам’яті. Організація та принципи управління.
- •1. Динамическое распределение памяти.
- •2. Разделение памяти на страницы.
- •3. Использование связанных списков.
- •4. Сегментация памяти.
- •5. Свопинг памяти.
- •6. Организация виртуальной памяти.
- •24. Динамічний розподіл пам’яті. Організація віртуальної пам’яті.
- •25. Загальні принципи будування багатопроцесорних обчислювальних комплексів..
- •26. Загальні принципи будування багатомашинних обчислювальних комплексів.
- •27. Конвеєрні, векторні та матричні багатопроцесорні комплекси.
- •28. Асоціативні системи та системи зі структурою, що перебудовується.
- •29. Принципи будування високонадійних обчислювальних систем - кластерів.
- •30. Принципи побудови систем з симетрично-паралельною обробкою даних. Переваги та недоліки таких систем
- •31. Страницы jsp. Теги и встроенные объекты jsp
- •32. Архитектура распределенных приложений. Web – сервисы
- •33. Soap
- •34. Java rmi Достоинства и недостатки Java rmi
- •35. Распределенные компьютерные системы. Промежуточное программное обеспечение распределенных компьютерных систем
- •36. Виртуальная машина jvm
- •37. Пространства и схемы xml
- •38. Corba. Достоинтсва и недостатки corba
- •39. Сервлет-технология Java
- •40.Xml. Структура xml-документа
- •2 Группа
- •1 Класифікація операційних систем
- •2 Мультизадачність, її розновиди
- •3. Процеси, потоки та їх взаємодія
- •4. Стани процесів
- •5. Розподіл оперативної пам'яті фіксованими розділами
- •6. Розподіл оперативної пам'яті зміними розділами, алгоритми завантаження нових процесів
- •7. Пошук фізичної адреси у реальному режимі
- •8.Пошук фізичної адреси у захищеному режимі
- •9. Пошук фізичної адреси при сторінковій адресації
- •10.Сегментна та сторінкова організація віртуальної пам’яті, алгоритми заміщення сегментів
- •11. Системи введення-виведення, основні режими, базові таблиці
- •12.Файлові системи fat (fat-16, fat-32, vfat).
- •Vfat и длинные имена файлов
- •13.Файлова система hpfs.
- •14.Файлова система ntfs.
- •15.Файлова система UfS.
- •16. Структура жорсткого магнитного диску
- •1.Каждый жесткий диск обслуживают несколько головок, в зависимости от количества круглых пластинок, покрытых магнитным материалом, из которых состоит диск.
- •2.Информация записывается и читается блоками, поэтому все дорожки как бы разбиты на секторы (обычно по 512 байт).
- •3.В операциях чтения или записи на физическом уровне необходимо указывать номер головки (0,1,...), дорожки или цилиндра (0,1,...), сектора (1,2,...).
- •17 Класифікація системного програмного забезпечення
- •18 Мікроядерні та монолітні операційні системи, їх особливості
- •19 Сервісні системи (інтерфейсні системи, оболонки, утілити)
- •20 Інструментальні системи
- •21 Системи програмування, їх основні типи.
- •22 Системи штучного інтелекту
- •23 Асемблери, алгоритм двохпрохідного асемблера
- •24 Завантажувачі
- •25 Макропроцесори
- •26 Компілятори
- •27 Призначення та структура головної функції вікна.
- •Реєстрація класу вікна, параметри, які підлягають реєстрації.
- •29 Етапи створення вікна. Які функції задіяно на кожному етапі?
- •30 Ініціалізація dll-бібліотеки у середовищі Microsoft Windows nt/2000/xp.
- •31 Експорт та імпорт функцій при використанні dll-бібліотек.
- •32 Динамічний імпорт функцій при використанні dll-бібліотек.
- •33 Структура простої прикладної програми з бібліотекою динамічної компоновки. Послідовність дій при компіляції.
- •If(!strcmp((lpstr)lParam, szBuf)) // Сравниваем заголовок со строкой, адрес которой передан в функцию EnumWindowsProc
- •3 Группа
- •Void main ()
- •Void main ()
- •Void main ()
- •Int n; scanf("%d",&n); //число элементов в массиве
- •Void main()
- •Int n; scanf("%d",&n); //число элементов в массиве
- •Int main()
- •Int n,m; scanf("%d%d",&n,&m); //число элементов строк и элементов в строке
- •Int main()
- •Int n,m; scanf("%d%d",&n,&m); //число элементов строк и элементов в строке
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int mul(double X,double y)
- •Int main()
- •Int main()
- •Void func(a);
- •Int fclose(file *имя);
- •Void perror(const char *s);
- •Int fputc(int ch, file *fp);
- •Int fgetc(file *fp);
- •Int fputs(char* string, file *fp);
- •Int fprintf(file *fp, char *format [,аргумент]…);
- •Int fscanf(file *fp, char *format [,указатель]…);
- •Int n; float f; long l; int a[5]; float m[5];
- •Int fwrite(void *ptr, int size, int n, file *fp);
- •Int fread(void *ptr,int size,int n,file *fp);
- •16 Ооп. Визначення класу. Компоненти класу. Спеціфікатори доступу до компонентів класу. Різниця між методами класу, визначеними в класі та поза межами класу.
- •Void define(double re,double im)
- •Void display()
- •X.Define(1,2);
- •Void set(int);
- •Void myclass::set(int c)
- •Int myclass::get()
- •17 Ооп. Визначення класу. Конструктор, перевантажені конструктори, деструктор.
- •Void main()
- •Void main()
- •Void main()
- •18 Ооп. Поняття дружніх функціїй. Різниця між дружньою функцією - членом класу та не членом класу.
- •19 Ооп. Поняття перевантаження операцій. Правила її використання.
- •20 Ооп. Наслідування. Поняття базового та похідного класів. Спеціфікатори доступу до членів класів.
- •21 Моделювання. Визначення моделі та призначення моделювання. Види моделей.
- •22 Моделювання. Загальносистемна модель функціонування систем. Моделі систем: безперервна, лінійна, безперервна лінійна, дискретна.
- •23 Моделювання. Узагальнена модель систем масового обслуговування (смо). Типи смо
- •24 Моделювання. Позначений граф станів системи. Рівняння Колмогорова для ймовірностей стану системи. Фінальні ймовірності станів системи.
- •25 Асемблер. Регістри та біти ознак процесора Intel 8086. (регістри загального вжитку та сегментні регістри, їх призначення; ознаки cf, of, sf, pf, af, zf)
- •26 Асемблер. Структура програми (директиви сегментування segment та з використанням директиви model; директиви assume; моделі пам’яті; ініціалізація сегментних регістрів)
- •Int 21h ;вызов прерывания с номером 21h
- •28 Асемблер. Арифметичні операції додавання та віднімання чисел зі знаком та беззнакових, з урахуванням ознаки переносу, інкрементування й декрементування
- •Vich_1 dd 2 dup (0)
- •Vich_2 dd 2 dup (0)
- •Inc ax ;увеличить значение в ax на 1
- •29 Асемблер. Арифметичні операції множення та ділення чисел зі знаком та беззнакових
- •Imul eax,bx,8
- •Idiv (Integer diVide) Деление целочисленное со знаком
- •Idiv делитель
- •Idiv bx ;частное в ax, остаток в dx
- •30 Асемблер. Команди безумовної передачі керування. (прямі короткі; прямі; непрямі)
- •31 Асемблер. Організація циклів за допомогою команд jcxz; loop, loopz та loopnz
- •32 Асемблер. Команди умовного передавання керування. (операція cmp; операції умовного передавання керування jcxz, jc, jo, jz, jc, je, jl, jg, ja, jb)
- •Int 21h ;Вызов системной функции
- •33 Асемблер. Макроси (опис, розташування, використання)
- •4 Группа
- •1,2 Общая характеристика модели osi
- •3 Понятие «открытая система»
- •4 Стандартные стеки коммуникационных протоколов (osi , ipx/spx, NetBios/smb)
- •5 Стек tcp/ip
- •6 Общая структура телекоммуникационной сети
- •7 Корпоративные сети
- •8,9 Сети операторов связи
- •10 Классификация линий связи: первичные сети, линии и каналы связи; физ.Среда пердачи аднных
- •11 Классификация линий связи: аппаратура передачи данных
- •12 Структурированная кабельная система
- •13 Безпровідна лінія зв'язку, діапазони електромагнітного спектру
- •14 Безпровідне середовище передачі даних: розповсюдження електромагнітних хвиль, ліцензування
- •15 Общая характеристика протоколов локальных сетей: стандартная топология и разделяемая среда, стек протоклов локальных сетей.
- •16 Протокол mac. Адресация mac-уровня.
- •17 Структура стандартов ieee 802.X
- •18 Спецификация физической среды Ethernet ( общая характеристика стандартов 10Мбит/мек,Домен коллизий)
- •19 Спецификация физической среды Ethernet ( Стандарт 10Base-5, 10Base-5)
- •20 Спецификация физической среды Ethernet ( Стандарт 10Base-т)
- •21 Спецификация физической среды Ethernet ( Оптоволоконная сеть Ethernet)
- •22 Технология Fast Ethernet (Физический уровень технологии Fast Ethernet)
- •23 Технология Fast Ethernet (спецификация 100Base-fx/тх/т4)
- •24 Правила построения сегментов Fast Ethernet при наличии повторителей
- •25. Gigabit Ethernet
- •26. Технология Token Ring
- •27 Загальна характеристика безпровідних локальних мереж
- •28 Мережі Стек протоколів ieee 802.11, безпека безпровідних локальних мереж
- •29 Мережі Топології безпровідних локальних мереж стандарту 802.11, розподілений та централізований режими доступу до розділеного середовища
- •30 Мережі Особливості персональних мереж, архітектура Bluetooth
- •31 Мережі Стек протоколів Bluetooth, кадри Bluetooth.
- •32 Мережі Основні функції мережних адаптерів
- •33 Мережі Основні и додаткові функції концентраторів
- •34 Мережі Багатосегментні концентратори
- •35 Мережі Основні характеристики та особливості комутаторів. Неблокуючі комутатори
- •36 Мережі Функції комутаторів (боротьба з перевантаженнями трансляція протоколів канального рівня, фільтрація трафіку)
- •37 Мережі Характеристики продуктивності комутаторів
- •38 Мережі Поняття та призначення віртуальних мереж
- •39 Мережі Створення віртуальніх мереж на базі одного та декількох комутаторів
- •40 Мережі Якість обслуговування в віртуальних мережах
- •41 Мережі Типи адрес стеку tcp/ip (локальні адреси, мережні ip-адреси, доменні імена).
- •42 Мережі Протокол dhcp
- •43 Мережі Протоколи транспортного рівня tcp и udp (загальна характеристика, порти)
- •44 Мережі Протокол транспортного рівня udp
- •45 Мережі Протокол транспортного рівня tcp (формат tcp - сегмента, логічне з‘єднання, послідовний та затверджений номер)
- •47 Мережі Класифікація протоколів маршрутизації, маршрутизація без таблиць, адаптивна маршрутизація
- •48 Мережі Використання декількох протоколів маршрутизації, зовнішні та внутрішні шлюзні протоколи
- •49 Мережі Протокол bgp
- •50 Мережі Поняття, типи icmp-повідомлень
- •51 Мережі Протокол icmp (формат ехо – запитання /ехо - відповідь и утиліта ping; формат повідомлення про помилку та утиліта traceroute)
- •5 Группа
- •1 Трьохрівнева модель субд
- •2 Моделі даних
- •3 Реляційна модель даних
- •4 Ключі відношень. Визначення, різновиди, призначення. Умови цілісності даних
- •5 Інфологічне моделювання предметної області. Модель “Сутність – зв’язок”
- •6 Види зв’яку між сутностями. Навести приклади
- •7 Нормалізація відношень. Призначення. Послідовність виконання нормалізації.
- •8 Нормалізація відношень. 1 та 2 нормальні форми.
- •9 Нормалізація відношень. 3 нормальна форма та нормальна форма Бойса-Кодда. Навести приклади
- •10 Функціональні залежності атрибутів у відношеннях.
- •11 Реляційна алгебра. Основні операції реляційної алгебри.
- •12 Оператор Select. Речення From . Синтаксис. Використання. Навести приклади.
- •13 Відбирання рядків у запитах. Синтаксис. Навести приклад.
- •14 Відбирання груп у запитах. Синтаксис. Навести приклад.
- •15 Групування та сортування записів у запиті. Навести приклад
- •16 Вкладені запити. Різновиди. Синтаксис. Навести приклади.
- •17 Використання агрегатних функцій у запитах.
- •18 Фізична модель даних. Структура записів на носії.
- •21. Рівні та задачі проектування електронних пристроїв от.
- •22. Математичне моделювання електронних пристроїв от: переваги та недоліки.
- •23. Математичні моделі елементів електронних пристроїв. Визначення і класифікація, методи розробки.
- •24. Задачі схемотехнічного проектування електронних пристроїв от.
- •25. Структура та можливості програм моделювання електронних схем.
- •26. Типова структура і засоби розробки макромоделей інтегральних мікросхем.
- •27. Імітаційне моделювання електронних пристроїв от: процес, подія, активність.
- •28. Методи функціонального моделювання аналогових і цифрових пристроїв.
- •29. Методи логічного моделювання цифрових пристроїв.
- •30. Тестування цифрових пристроїв: контролюючі та діагностичні тести. Засоби їх отримання.
- •31 Моделювання на рівні регістрових передач
- •32 Функціональне моделювання за допомогою програм моделювання аналогових схем.
- •33 Математические методы и модели на разных уровнях проетирования
- •6 Группа
- •1 Властивості інформації. Класифікація загроз інформації.
- •2 Уровни защиты информации в компьютерных системах
- •3 Законодательний рівень захисту інформації
- •4. Організаційно-адміністративний рівень захисту інформації
- •5. Фізико-технічні засоби захисту інформації в компьютерних системах
- •6. Криптографічний захист інформації
- •7. Стандарти симетричного шифрування даних
- •8. Криптосистеми з відкритим ключем
- •9. Канали несанкціонованого доступу до інформації
- •10, Системи захисту від несанкціонованого доступу
- •11. Аутентифікація електронних даних: імітоприкладка, електронний цифровий підпис
- •3. Проверка подписи
- •1. Генерация ключей
- •2. Подписание документа
- •3. Проверка подписи
- •12. Системи ідентифікації та аутентифікації користувачів
- •13. Взаємна аутентифікація користувачів
- •1. «Запрос-ответ»
- •2. «Временной штемпель»
- •3. Процедура рукопожатия
- •4. Протокол аутентификации с нулевым разглашением знаний
- •14. Парольная система. Требования к паролям.
- •15. Захист від віддалених мережевих атак
- •27. Перетворення спектра при дискретизації сигналів. Теорема Котельникова
- •28. Швидке перетворення Фур'є з проріджуванням за часом. Структурна схема "метелика" з проріджуванням за часом.
- •29. Поняття цифрового фільтра. Рекурсивні та нерекурсивні фільтри. Чотири основні форми реалізації фільтрів.
- •30. Операції над зображеннями. Поняття околу (4-точечний, 8-точечний окіл). Вікно, опорна точка вікна.
- •31. Лінійна фільтрація зображень. Рівняння лінійної фільтрації
- •7 Группа
- •2 За допомогою методики розрахунка конфігурації мережі Ethernet, підтвердіть правило 4-х хабів.
- •8 Наведіть обмеження для мереж, що побудовані на основі комутаторів
- •11 Яку максимальну кількість підмереж можливо організувати для мережі класа с? Приведіть значення маски
- •20 Проаналізуйте можливості та характеристики сучасних принтерів
- •21 Проведіть логічне тестування і відновлення інформації на гнучкому магнітному диску
- •22 Структура та принцип роботи сучасного модема, блок-схема передавача та приймача
- •23 Реалізація функцій скремблювання та ехоподавлення в сучасних модемах
- •24 Сучасні жорсткі диски. Проаналізуйте їх характеристики
- •25 Сучасні сканери, Проаналізуйте їх функції та характеристики
- •26 Джерела безперервного живлення. Проаналізуйте їх основні характеристики
- •27 Дайте визначення та наведіть робочі формули основних показників надійності. Приведіть та роз'ясніть графік інтенсивності відмов для обчислювальних пристроїв.
- •28 Приведіть формулу ймовірності безвідмовної роботи Pc(t) системи з навантаженим загальним резервом. Приведіть графік залежності нароботки до відказу від кратності резерву.
- •17 Розробіть на мові асемблер програму для обчислення суми чисел масиву з 10 елементів типу байт у процедурі з передаванням аргументів через регістри.
- •18 Розробіть на мові асемблер фрагмент програми, в якій знаходиться максимальний елемент масиву з 10 чисел типу слово (з використанням команди jcxz).
- •19 Розробіть на мові асемблер фрагмент програми для обчислення номеру мінімального елементу в масиві з 10 чисел типу слово (за допомогою команди loop)
- •20 Розробіть на мові асемблер фрагмент програми, що порівнює значення двох змінних введених з клавіатури й відображає результат у вигляді: рівні або нерівні.
- •21 Розробіть на мові асемблер фрагмент програми, в якій додаються та множаться два байтові числа, визначається парний чи непарний результат суми та дво- чи чотирьохбайтовий результат добутку.
- •26 Приведіть методи підвищення ефективності роботи з жорстким диском по переміщенню голівок
- •31 Проаналізуйте структуру драйверу ms dos. Його частини. Завантаження драйверу та робота з ним.
- •33 Наведіть характеристики режимів відеосистеми. Характеристики, які не змінюються, які змінюються з використанням фізичних методів. Характеристики, які змінюються програмно.
- •34 Проаналізувати методи створення розділів диску. Скільки розділів та логічних дисків можливо встановити на одному фізичному диску?
3 Группа
1 Структура програми, написаної мовою програмування С++. Константи, змінні. Характеристики базових типів даних.
Программа – это последовательность препроцессорных директив, описаний и определений глобальных объектов и функций.
В программе должна быть определена одна и только одна главная функция с именем main(). Помимо этой функции в программе могут быть определены любое количество других функций. Тело функции заключается в фигурные скобки и включает последовательность операторов, определяющих действия, которые выполняет эта функция. Функция main() является точкой входа из операционной системы в программу.
Все переменные и другие объекты, которые не входят в состав функций, являются внешними, или глобальными.
Рассмотрим пример простой программы:
#include <stdio.h> // препроцессорная директива
#define b 2 // препроцессорная директива
int a=5; // определение и инициализация внешней переменной а;
int sum(int x,int y); // прототип функции, описание функции sum;
void main() // заголовок главной функции
{int с,res=0,d=7; // определение и инициализация переменных с,res,d;
c=a+b+d; // вычисление суммы 3-х чисел 5+2+7=14
res=sum(10,d); // вызов функции sum;
printf("c=%d res=%d ",c,res); //вывод на экран переменных с,res
}
int sum (int x, int y) //заголовок функции sum;
{ return x+y; } //тело функции sum: определение суммы чисел 10+7=17;
Данные – это носители информации, которые обрабатываются компьютером. Данные можно условно разделить на переменные и константы. С точки зрения записи данных средствами языка Си, различают их десятичное, восьмеричное и шестнадцатеричное представления.
Переменная – это обозначение величины в программе, значение которой может изменяться во время выполнения программы. С точки зрения архитектуры компьютера, переменная – это ячейки оперативной памяти программы, в которой хранятся данные. Содержание этих ячеек – это текущее значение переменной.
Любая величина, используемая в программе, должна быть описана. Описание состоит из задания типа переменной, имени переменной (идентификатора) и некоторых других атрибутов. Тип переменной определяет, сколько ячеек памяти выделить под данную переменную, какие возможные значения эта переменная может принимать и какие возможные операции можно выполнять над этой переменной.
В программе можно явно записать число, символ и т.п. Например: х+4. Значение переменной х может быть различно, однако число 4 всегда останется 4. Это неизменяемая величина, или константа. Таким образом, явная запись значения в программе – это константа.
Константы – это изображение числовых, символьных или строковых величин в программе, значения которых постоянно и не изменяется во время выполнения программы.
Константы так же имеют тип, который может задаваться явно или присваиваться по умолчанию.
Различают базовые и производные типы данных.
К базовым типам относятся void, char, int, short int, float, double и их модификации со служебными словами long, signed, unsigned.
К целому типу относятся переменные и константы типа int, unsigned int, long, unsigned long, сhar, unsigned char, short.
В языке Си (С++) есть три формы внутреннего представления вещественных чисел (чисел с дробной частью): float, double, long double.
Переменные и константы целого типа имеют следующие характеристики:
-
Тип
Размер
Диапазон
char
1 байт (8 бит)
–27 ÷ 27–1
unsigned char
1 байт (8 бит)
0 ÷ 28–1
int
2 байт (16 бит)
–215 ÷ 215–1
unsigned int
2 байт (16 бит)
0 ÷ 216–1
long
4 байт (32 бит)
–231 ÷ 231–1
unsigned long
4 байт (32 бит)
0 ÷ 232–1
Константы целого типа по умолчанию имеют тип int. Для задания типа long дописывается символ L, для задания типа unsigned дописывается символ u: 234L, 456u, 23456Lu.
Переменные и константы вещественного типа имеют следующие характеристики:
-
Тип
Размер
Диапазон
float
4 байт (32 бит)
±3.4∙10–38 ÷±3.4∙10–38
double
8 байт (64 бит)
±1.7∙10–308 ÷±1.7∙10–308
long double
10 байт (80 бит)
±3.4∙10–4932 ÷±3.4∙10+4932
Константы вещественного типа по умолчанию имеют тип double. Для задания типа float дописывается символ f, для задания типа long double дописывается символ L: 23.4f, 4.56L.
Именованные константы можно задавать с помощью
1) слова const, например:
const a=100; const int с=100; const char ADC=’c’; const double R=2.718281828;
2) директивы препроцессора #define, например: #define PI 3.1415
2 С++. Форматоване та неформатоване введення з клавіатури в програму та виведення на екран з програми даних різних типів
Функции потокового файлового ввода-вывода включены в стандарт ANSI языка С и их обычно называют функциями стандартного ввода-вывода. Они описаны в заголовочном файле <stdio.h> – стандартный ввод-вывод.
Когда запускается любая программа на языке С++, операционная система открывает для нее (программы) стандартные потоки, в частности, имеющие имена stdin и stdout, под которыми подразумеваются соответственно клавиатура и экран монитора.
Таким образом, говоря о вводе-выводе с точки зрения прикладного программирования, будем пока считать, что мы посылаем данные для ввода в поток с именем stdout, который донесет их до экрана монитора, а для ввода с клавиатуры – будем извлекать данные из потока, который называется stdin. Такой ввод-вывод бывает двух видов: неформатированный и форматированный.
Функция форматированного вывода printf() имеет следующий синтаксис:
printf(форматная строка,аргумент_1,аргумент_2,…);
Форматная строка – последовательность символов, заключенная в двойные кавычки, в которой можно с помощью спецификаторов задавать способ преобразования данных. Спецификаторы – это символы, которые начинаются знаком %. Вся форматная строка в функции printf() выдается на экран, причем спецификаторы %xxx заменяются значениями выводимых аргументов. Первый, второй и т.д. аргументы – это переменная, константа или любое унарное выражение, которое может быть заключено в скобки. Например:
int a=2,b=5,c;
printf(“a=%d,b=%d,сумма=%d,c=%d\n”,а,b,a+b,9);//a=2,b=5,сумма=7,с=9
Спецификаторы преобразования задается в виде:
%[флаги][ширина][.точность][l|L]<тип>
Имеются следующие типы преобразования переменных
%d %i – целое число типа int или char;
%u – беззнаковое целое число unsigned int;
%o – целое число типа int в 8-ой системе счисления;
%x – целое число типа int в 16-ой системе счисления;
%f – вещественное число типа float в виде целой и дробной части;
%e – вещественное число типа float в экспоненциальной форме;
%g – вещественное число в виде целой и дробной части или в экспоненциальной форме;
%c – – целое число типа int или char в виде символа;
%s – строка;
%р – адрес переменной (&a).
Обратим внимание на модификаторы l и L. Для переменных типа long int используются типы с модификатором %ld, %lo, %lu, %lx. Для переменных типа double используются типы c модификатором %lf, %le, %lg. Для переменных типа long double используются типы с модификатором %Lf, %Le, %Lg.
Ширина указывается в виде числа и определяет минимальное количество позиций, которые отводятся для вывода данных. Если позиций недостаточно, то ширина игнорируется. Если их больше, чем выводимые данные, то пустые позиции дополняются пробелами. Например:
Точность задается для вещественных чисел и определяет, сколько знаков после десятичной точки из общей ширины поля будет напечатано. Ширина поля для вещественных чисел включает символы знака, точки, порядка.
printf(“%8.2f”,5.3334); // 5.33
Функция форматированного ввода scanf( ) имеет следующий синтаксис:
scanf(форматная строка, аргумент_1, аргумент_2,…);
Форматная строка – последовательность спецификаторов, заключенных в двойные кавычки, которые начинаются знаком %. Первый, второй и т.д. аргументы функции – это адреса переменных, куда должны вводиться числа после преобразования.
scanf(“%d”,&a); // ввод значения целой переменной а.
scanf(“%f”,&g); // ввод значения вещественной переменной g.
Функция scanf( ) принимает с консоли (с клавиатуры) все символы до нажатия клавиши Enter и помещает их в буфер. Затем по форматной строке определяется способ преобразования этих символов, и уже затем полученное число помещается в ячейку с адресом, соответствующим данной переменной.
Функция scanf( ) позволяет вводить с консоли строковые константы и переменные. В этом случае используется спецификатор формата %s.
char str[20];
scanf(“%s”,str); // ввод строки не более 20 символов
В языке С имеется стандартные функции неформатированного ввода-вывода: getchar(), putchar(), gets(), puts().
Функция getchar() возвращает целое число, соответствующее вводимому символу. При вводе символа надо нажать клавишу Enter. Для вывода символа в стандартный поток (на экран) используется функция putchar(аргумент), где аргумент представляется в виде целого числа. Например:
#include <stdio.h>