- •Загальні положення ...………………………………………………………….........3
- •Загальні положення
- •1 Організація введення і виведення даних та розв’язання задач з простою змінною
- •1.1 Мета роботи
- •1.2 Вказівки до організації самостійної роботи студентів
- •1.2.1 Використання операторів введення
- •#Define sp " "
- •Int main ( )
- •Int main ( )
- •Int main ( )
- •Void main ( )
- •For ( [ вир1 ]; [ вир2] ;[ вир3 ] ) оператор;,
- •Void main ( )
- •Void main ( )
- •1.5 Контрольні питання
- •1.6 Варіанти індивідуальних завдань
- •2 Розв’язання задач c використанням одновимірних і двовимірних масивів
- •2.1 Ціль роботи Прищепити студентам навички розв’язання задач з використанням одновимірних і двовимірних масивів, складних циклів і використання покажчиків.
- •2.2 Методичні рекомендації з організації самостійної роботи студентів
- •Void main( )
- •Void main ( )
- •Void main ( )
- •Void main ( )
- •2.3 Використання покажчиків
- •Наиведемо програму з використанням покажчиків:
- •Int main ( )
- •Void main ( void )
- •2.4 Використання масивів і покажчиків
- •Приклад 2.4 Обчислити середнє значення додатних елементів одновимірного масиву.
- •Int *pmas;
- •2.5 Масиви покажчиків
- •Void main( )
- •2.6 Контрольні питання
- •2.7. Варіанти індивідуальних завдань
- •3 Вирішування задач з використанням даних символьного типу
- •3.2.1 Організація символьного введення - виведення
- •Device . Get (char_var);
- •3.2.2 Рядки як символьні масиви
- •3.2.3 Введення-виведення символьних масивів
- •Void main (void)
- •3.2.4 Основні функції обробки символьних типів
- •Void main (void)
- •Void del (char *st, int k, int n);
- •Void del(char *st, int, int);
- •Void main()
- •Void del(char *st,int k,int n)
- •[ Проміжки ] [знак числа] [ цифри].
- •Void main( )
- •Void main()
- •Void main()
- •Void main(void)
- •3.2 Контрольні питання і завдання
- •3.4 Варіанти індивідуальних завдань
- •4 Вирішувння задач з використанням даних типу структура
- •4.1 Ціль роботи Освоєння заходів розробки і налагодження програм з використанням
- •4.2 Методичні рекомендації з організації самостійної
- •Void main(void)
- •Void qsort (void *base , n , width,
- •Int (*fcmp) ( const void *elem1, const void *elem2) .
- •4.3 Контрольні питання
- •4.4. Індивідуальні завдання
- •5 Використання функцій при розробці програм
- •5.1 Ціль роботи
- •5.2 Методичні вказівки з організації самостійної роботи студентів
- •Void fun ( int p)
- •Void main ( )
- •Void fun (int &р)
- •Void main ( )
- •Void fun2 (int *p)
- •Void main ( )
- •Int main ( )
- •5.2.1 Використання покажчиків на функцію
- •Void main ( )
- •Int god ( const void*, const void * ) ;
- •5.2.2 Використання масивів - параметрів функцій
- •Void fun2 ( int mat [ ] [10], int rows, int cols );
- •Int getnum (const char *elemtype , int low , int high )
- •Int main ( )
- •5.2.4 Звертання до функції і передача результату
- •Int main ( )
- •5.2.5 Перевантаження функцій
- •Int main ( )
- •5.3 Контрольні питання
- •5.4 Варіанти індивідуальних завдань
- •6 Робота з файлами
- •6.1 Ціль роботи
- •6.2 Методичні вказівки по організації самостійної роботи
- •Int main ( )
- •Int main ( )
- •Void main ( )
- •Перелік посілань
- •Навчальне видання
- •61726 Харків, просп. Леніна, 14.
Void qsort (void *base , n , width,
int (* fcmp ) (const void *elem 1, const void -> elem2)) ,
де base — покажчик на перший елемент масиву;
n — кількість елементів масиву;
width -довжина елементів масиву в бітах.
При виконанні сортування функція qsort ( ) звертається до заданого користувачем функції.
Функція задається покажчиком на функцію:
Int (*fcmp) ( const void *elem1, const void *elem2) .
Функція, на яку вказує fcmp , виконує порівняння двох елементів масиву, на які вказує elem1 і elem2.
Функція повинна повертати значення:
< 0, якщо *elem1 < *elem2;
= 0, якщо *elem1 = *elem2;
> 0, якщо *elem1 > *elem2;
Якщо *elem1 > *elem2 , то елемент, на який указує elem1 розташовується в масиві раніш; "колишній" елемент розташовується в упорядкованому масиві пізніше.
Користувач задає порівнювані поля структурних змінних. Він також може змінити порядок, у якому будуть упорядковуватися елементи, що досягається зміною знака значень, що повертаються з функції, на протилежні; може змінити поля, по яких виконується сортування.
У бібліотеці <stdlib.h> існує також функція пошуку змінних структурного типу в масиві цих змінних.
4.3 Контрольні питання
1. Що таке дані типу структура і які типи даних вони містять?
2. Як описуються дані типу структура?
3. Які існують засоби ініціалізації полів структури?
4. Що таке “вкладеність“ структур?
4.4. Індивідуальні завдання
1. З відомості працівників цеху визначити, скільки в цеху чоловіків-токарів?
2. Скільки в групі студентів-відмінників (всі оцінки 5) і студентів невстигаючих?
3. Є чи в групі студенти, що грають у волейбол , зріст яких більше 180 см?
4. Список студентів відсортувати за зменщенням середнього бала.
5. Ввести в довільному порядку відомості про студентів групи. Вивести прізвища студентів по групах: встигають ”добре”,” задовільно”,” незадовільно”.
6. Віддрукувати список робітників-жінок ціху пенсійного віку.
7. Ввести в пам'ять розклад електропоїздів прямуючих з Харкова через Мерефу. Які з потягів прямують тільки до Мерефи?
8. Хто зі студентів групи має самий великий зріст і вагу ?
9. Ввести відомості про дату народження студентів групи, вивести дані в такому порядку: спочатку - про народжених в 1-ої декаді, потім у 2-ий і 3-їй декадах.
10. Зі списку студентів групи вивести на екран два списки: перший містить прізвища дівчин, другий — прізвища юнаків.
11. Список студентів групи ввести в довільному порядку, а вивести на екран по групах, кожна група належить до якого-небудь знака зодіаку.
12. За яким предметом в студента з заданим номером по журналу краща оцінка за підсумками сесії?
13. Ввести в пам'ять результати змагань по лижних гонках. Показати п'ять кращих результатів окремо для юнаків і дівчат.
14. За результатами лижних змагань у трьох групах сформувати збірну команду з 7 чоловік.
15. Ввести списки двох студентських груп, упорядкованих за зменшенням середнього бала. Виконати злиття списків в один список, упорядкований за тою же відзнакою.
16. В одному списку інформація про студентів, що приймали участь в олімпіаді по математиці, в іншому — по інформатиці. Сформувати третій список з учнями, що брали участь в обох олімпіадах.
17. З якого предмета в заданого студента краща оцінка за підсумками навчального року ?
18. Хто зі студентів-спортсменів здав усі випускні іспити на "добре" і "відмінно" ?
19. Хто краще учиться в групі - дівчата або юнаки?
20. Є чи в групі студенти, що мають оцінку 4 або 5 по інформатиці і грають в шахи ?
21. Знаючи прізвища улюблених письменників ваших друзів, надрукувати прізвища п'яти найбільш популярних письменників.
22. Обчислити середній бал групи і роздрукувати список студентів, що мають середній бал вище за середнє бала групи.
23. Роздрукувати список студентів, прізвища яких починаються з букви "А", і їхньої оцінки за час навчання.
24. За підсумками останньої сесії роздрукувати список відмінників і тих, що вчаться добре упорядкований за алфавітом.
25. Обчислити середній бал групи і роздрукувати список студентів за зменшенням середнього бала.