Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Тема 2. Структурне програмування. Оператори в мові С




Кібернетико-технічний коледж

А.В. Книшук, С.О.Улічев

Збірник практичних та лабораторних завдань

З програмування на мові С

Кіровоград, 2007

Зміст

  Стор
Вступ Тема 1. Тема 2. Тема 3. Тема 4. Тема 5. Тема 6. Тема 7. Тема 8.   Список літератури Додаток 1. Зразок оформлення лабораторної роботи Додаток 2. Робота з тестовою програмою ISPYT  

Вступ

В посібнику запропоновано відповідно до лекційних тем навчального плану дисципліни теоретичні питання та завдання лабораторних робіт.

Вимоги до оформлення лабораторної роботи.

Звіт щодо виконаної роботи повинен містити наступні відомості:

· опис програм (їх призначення та функції)

· постановку та хід розв‘язання індивідуальних завдань

· опис розроблених (або використаних) математичних моделей та алгоритмів

· Довідка користувача (відомості про те, як користуватись програмою)

· тестовий приклад та результати його обробки програмою

· тексти розроблених програм

Всі матеріали також подаються у електронному вигляді (на дискеті) разом зі звітом.

Звіт оформлюють на аркушах формату А4, аркуші нумерують, скріплюють і подають для підпису викладача практики.

 

Питання тестів є питаннями іспиту з дисципліни “Алгоритмічні мови та програмування”.

Також запропоновано збірку задач для виконання на практичних заняттях. Задачі розташовані в міру зростання складності.

 

 

Тема 1. Основні поняття мови С. Введення/виведення даних

 

Запитання до теми

1. Які символи входять до алфавіту мови С?

2. Які знаки використовуються для позначення коментарів?

3. Що таке ідентифікатор ?

4. Чи є ідентифікатори MONTH, Month, month, MoNtH однаковими, якщо ні – то чому?

5. Які з наступних символів можуть бути використаними при створенні ідентифікатора: “\”, ” ”, ”6”, ”_”?

6. Які з арифметичних операції визначені лише на множинні цілих чисел? Наведіть приклади.

7. Який розмір в байтах займають змінні базових типів?

8. Яку функцію виконують модифікатори типу ?

9. Що таке вираз?

10. Якого значення набуде вираз:

(x&&y) || z, якщо

x ‑ істина                         z=0                    z=0

y – не істина                   x=1                    y=0

z ‑ істина                          y=1                    x=1

11. Що більше: 17/6 чи 17%6?

12. Доберіть операції для цілочислених аргументів: 17, 6, 3, щоб одержати результат 15.

13. Як за допомогою стандартних функцій С обчислити ctg(x)?

14. В якому заголовному файлі описані функції printf(), scanf()?

15. Що таке форматоване виведення та як воно реалізоване в мові С?

16. Чи можна за допомогою одного оператора виводу вивести на екран інформацію в декілька рядків, наведіть приклад?

17. Що таке ширина поля виводу? Як її задати?

18. Яку кількість аргументів може мати функція printf()?

19. Перелічити специфікатори формату виведення в С.

20. Чи можна використовувати обчислення безпосередньо у функції виводу?

21. Яка Esc-послідовність використовується для виводу звукового сигналу?

22. Які функції, крім printf(), використовуються для виведення інформації?

23. Яку функцію потрібно використати, щоб ввести з клавіатури дві цілочислені змінні х1 та х2?

24. Яку інформацію містить рядок управління в функції scanf()?

25. Які функції, крім scanf(), використовуються для введення інформації?

 



Задачі для практичних робіт

 

1. Бабусею на депозит в банк було покладено 1000 грн. під 12% річних. Дідусь спочатку обміняв таку ж суму на $ за курсом продажу 5.1 грн/$ й поклав на валютний рахунок під 9% річних. По закінченню річного строку курс покупки $ становив 5.25 грн./$. Визначити в гривневому еквіваленті різницю між фінансовими станами бабусі та дідуся.

2. Перше січня 2005 року було суботою. Визначити, яким за номером днем тижня був N-ий день цього року.

3. Тваринник на початку кожної зими підвищує відпускну ціну на молоко на p%, а кожного літа – знижує на стільки ж відсотків. Чи зміниться ціна на молоко і якщо так, то яким чином і наскільки через n років?

4. Обчислити значення функції z=sin3 b+lgxa-y, якщо y=a/lnx, x=a–eb та a=1,1, b=0,3.

5. Обчислити значення похідної функції y=xx в заданій точці x=a (a>0).

6. Для заданого a обчислити корінь рівняння ln(ctg x-1)=a, що належить інтервалу (p, 2p).

7. Обчислити дробову частину середнього геометричного трьох заданих додатних чисел.

8. Обчислити довжину кола, площу круга та об’єм кулі одного й того ж заданого радіуса.

9. Знайти добуток цифр заданого чотиризначного числа.

10. Визначити число, отримане виписуванням цифр заданого числа у зворотному порядку.

11. Визначити тривалість руху тіла, що вільно падає із заданої висоти H.

12. За введеною швидкістю та кутом кидання визначити дальність польоту тіла, кинутого під кутом до горизонту.

13. За шкалою Реомюра температурі плавлення льоду відповідає 0°R, а температурі кипіння води – 80°R. Записати програму переведення температури, що задана за шкалою:

а) Реомюра у температуру за шкалою Цельсія; 

б) Цельсія у температуру за шкалою Реомюра.

14. Визначити період коливань математичного маятника, довжина підвісу якого становить 156.8 см.

15. Задати рівняння двох прямих на площині: y=k1х+b1 і y=k2х+b2, що перетинаються та визначити кут (в градусах та мінутах) між ними. Використати формулу:



Лабораторна робота №1

Тема:Обчислювальні програми з використанням функцій форматованого вводу / виведення.

Мета: навчитись створювати лінійні програми обчислювального характеру з введенням даних з клавіатури і виведенням результату на екран

Завдання

1. Обчислити значення виразу, ввівши необхідні дані з клавіатури та використавши допоміжні змінні. Результат вивести на екран у вказаному форматі.

2. Обчислити площу заштрихованої фігури. Необхідні параметри ввести самостійно.

Скласти звіт.

 

варіант

завдання 1

завдання 2
Вираз ширина поля точність фігура
1 , де b=2.1 10 4  
2 , де y=3.75 8 3  
3 , де y=0.94 9 5  
4 , де x=0.31 8 4  
5 , де y=0.02 12 2  
6 , де a=1.71, x=-1.1 10 5  
7 , де y=2.44 12 5  
8 , де y=1.18 9 2  
9 , де b=1.04 12 4    
10 , де b=0.9 11 5  
11 , де y=6, x=1.13 14 6    
12 , де b=3.5 8 2  
13 , де a=4.7 10 3  
14 , де c=2.4, t=5.18 9 3  
15 , де b=1.96 8 4  
16 , де c=0.7 12 3  
17 , де k=2.71, w=1.1 14 2  
18 , де x=-3.3 10 3  
19 , де x=6.2 11 4  
20 , де a=1.45 9 2  
21 , де φ=1.75 10 4  
22 , де a=2 8 2  
23 , де y=4, b=1 9 3  
24 , де x=1.5 12 4  
25 14 5  

 



Тестові завдання

1. Вкажіть правильне твердження: а) арифметичні операції *, /, %, + – мають однаковий пріоритет; б) операція взяття за модулем може використовуватись тільки з цілими операндами; в) імена змінних thisisasuperduperlongname1234567 і thisisasuperduperlongname123456 ідентичні у всіх системах С, що задовольняють стандарту ANSI; г) операція / використовується лише з цілими операндами
2. Який із перерахованих нижче операторів відповідає рівнянню y = ax3 + 7 ? а) y = a * (x * x * x) + 7;        в) y = pow (a*x, 3) + 7; б) y = a * x * x * (x + 7);        г) y = a * pow (x + 7, 3);
3. Який діапазон значень змінної типу "int"? а) -128 .. 127                 в) 0 .. 65 535 б) -32 768 .. 32 767       г) 1..65 526
4. Який діапазон значень змінної типу "char" ? а) -128 .. 127;               в) -255 .. 0. б) 0 .. 255;                     г) 1 .. 256
5. Вкажіть правильний порядок пріоритету операцій: а) +, ++, %, *              в) ++, *, %, + б) *, %, ++, +               г) %, *, ++, +
6. Арифметична операція “++” це: а) збільшення на одиницю;      в) множення. б) збільшення на саме себе;     г) піднесення до квадрату
7. Операція відношення “!=” відповідає математичному: а) дорівнює        в) не дорівнює б) більше            г) менше
8. При використанні операції присвоювання вираз m -= 20 аналогічний запису: а) m – 20             в) m = m % 20 б) m = m – 20      г) m < 20
9. Вкажіть правильне твердження: а) функція printf завжди починає друкувати з початку нового рядка; б) коментарі при виконанні програми виводяться на екран; в) всі змінні повинні бути об’явленими до їх використання; г) C не розрізняє великі і малі букви.
10. Що видасть на екран наступний фрагмент програми: x=5; printf(x=%d”, x++); ? а) х = 5         в) х = 5++ б) х = 6         г) х = %6.
11. Керуючий символ %d указує на: а) читання символу б) читання 10-вого цілого в) читання числа типу float г) введення даних у форматі відсотків
12. Оцінити значення виразу 4<<2: а) 8   в) 16 б) 2   г) 1
13. Оцінити значення виразу5>>2: а) 10   в) 20 б) 2     г) 1
14. Вказати групу операцій, що відносяться до однієї категорії: а) +, %, --, ^  в) !, &&, çç, –> б) <, =, !=, >  г) *=, +=, %=, ^=
15. Вкажіть невірне твердження.  В алфавіт мови С входять наступні символи: а) #, %, @, & в) ~, &, ^, ? б) ?, !, $, #     г) {, ~, &, $
16. Аналогом виразу x+++b є: а) (x++)+b     в) (x+1)+b б) x+(++b)     г) вираз містить помилку
17. Оцінити значення виразу17 % 6 / 2: а) 1     в) 2      б) 2.5     г) 0
18. Оцінити значення виразу-3<x<-1, якщо intx=-2: а) 1      в) true б) 0      г) вираз містить помилку
19. Оцінити результат виконання фрагменту програми: intx=8; printf(“z=%3.1f”, pow(x,1/3)); а) z=2.0      в) 0.0 б) z=1.0      г) фрагмент містить помилку
20. Оцінити результат виконання фрагменту програми: intx=2; printf(“z=%3.1f”, exp(log(x/3))); а) z=0.6      в) 1.0 б) z=0.7      г) помилка виконання програми

 



Тема 2. Структурне програмування. Оператори в мові С

 

Запитання до теми

1. Що таке складний оператор ?

2. Чим відрізняється складний оператор від блоку?

3. Де може здійснюватись опис змінних в мові С?

4. Які оператори розгалуження існують в мові С ?

5. Як застосовується оператор безумовного переходу?

6. Чим відрізняється повна форма оператора вибору від скороченої форми?

7. Що таке складна умова ?

8. Зобразіть блок-схеми повної та скороченої форми умовного оператору if?

9. Запишіть за допомогою операторів С наступну структуру: “якщо к>0 або к=0, то к=к*к; якщо к<0, то к=-к”.

10. Яке обмеження накладається на керуючу змінну оператора вибору switch ?

11. Яке завдання оператору break в конструкції switch…?

12. Яка роль оператора default в конструкції switch…?

13. Чи є помилкою відсутність оператора default в конструкції switch…?

14. До якого заголовного файлу відноситься функція генерування випадкового числа rand() ?

15. Напишіть оператор, що згенерує число з діапазону [-350;50].

16. Для чого використовується функція randomize(), як можна досягти того ж ефекту без використання randomize()?

17. В чому відмінність між циклами з перед- та післяумовою?

18. Що є тілом циклу?

19. Порівняти організацію роботи циклу з післяумовою в мовах Паскаль та С.

20. Назвіть особливості циклу for у мові С.

21. Який цикл називають порожнім?

22. Що таке "зациклювання" циклів?

23. Яке призначення операторів breakта continue в циклах?

24. Що означає поняття “вкладені цикли”?

25. Як перевіряються на прикладах алгоритми з циклами?

 










Последнее изменение этой страницы: 2018-05-29; просмотров: 275.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...