Академический Документы
Профессиональный Документы
Культура Документы
Кишинэу
2008
ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ МОЛДОВЫ
Кишинэу
Т.У.М.
2008
Данная работа содержит задания к 12 лабораторным
работам, которые предназначены для изучения различных
тем по алгоритмизации, структурам данных и
программированию на языке Си: циклические и
разветвлённые алгоритмы, одномерные и двумерные массивы,
указатели и динамическое распределение памяти, строки,
файлы, функции, массивы структур, алгоритмы поиска и
сортировки, реализация абстрактных типов данных -
линейных списков и деревьев. Для каждой лабораторной
работы указаны: тема, цель работы, формулировка задачи и
приведены 15 вариантов заданий.
Работа предназначена для студентов всех
специальностей факультета информатики, вычислительной
техники и микроэлектроники дневной и заочной формы
обучения, изучающих дисциплины «Программирование на
языке Си» и «Структуры данных и алгоритмы».
©Т.У.М., 2008
2
Лабораторная работа 1
Вариант 1.
1
ax b при х + а < 0 и с = 0
x a
F при х + a > 0 и с ≠ 0
sin x
10 x в остальных случаях
c 6
Вариант 2.
cos x
a 10 b при х < 0 и b ≠ 0
x a
F при х > 0 и b = 0
x b
3x 2 a в остальных случаях
c
3
Вариант 3.
Вариант 4.
ln x
при х < с и а ≠ 0
a sin x c b
x ax 2
при х > с и а = 0
F
x b sin c
3x a x в остальных случаях
2
c
Вариант 5.
1 x b при b - а < 0 и с = 0
x cos c a
a bx
F при b - a > 0 и с ≠ 0
ln x
10 x 2 в остальных случаях
c 2 x 6 b
4
Вариант 7.
a ln x 2
при x - 2 > 0 и a = 0
sin c b
x sin( x 1)
F при x - 2 < 0 и a ≠ 0
b
ax c в остальных случаях
cos 2 x
Вариант 8.
ln x x при х < с + a и b ≠ 0
c b a
a ax 2 c 3
при х > с + a и b = 0
F
sin b
ax в остальных случаях
x 2 c
Вариант 9.
a b
при x + c < 0 и b = 0
ln( x c)
sin a x 3 при x + c > 0 и b ≠ 0
F
c2
4 x 8 sin x в остальных случаях
a 2 x
Вариант 10.
sin a bx
при x + b < 0 и c = 0
x2 c
ln ax при x + b > 0 и c ≠ 0
F 2
c b
4 x 8 cos x в остальных случаях
a2 b
Вариант 12.
Вариант 13.
x2 при x < b и c ≠ 0
c ln ax
a c
x ln x 2 при х > b и c = 0
F 2
b cos ac в остальных случаях
a x e3x
c 2
6
Вариант 14.
x a b при х < a и b ≠ 0
ln x c
sin x cos b при х > a и b = 0
F 3
(a c)
a ln x в остальных случаях
x 2 c 2
Вариант 15.
x a b2 при х > c + b и a ≠ 0
cos x
ln a ln b при х < c + b и a = 0
F
ax c 2
a b x в остальных случаях
x2
7
Лабораторная работа 2
8
Вариант 8. Определить последний отрицательный
минимальный элемент и его позицию в массиве, а также
количество отрицательных элементов.
9
Лабораторная работа 3
10
Вариант 8. Определить минимум среди сумм элементов
диагоналей, параллельных главной диагонали.
11
Лабораторная работа 4
Задание:
12
4. Отсортировать столбцы массива по возрастанию с
помощью метода линейного выбора.
13
Лабораторная работа 5
14
Лабораторная работа 6
Задание:
Для заданного массива элементов типа структура (по
вариантам) вывести на экран следующее меню операций:
15
3. Структура ГОСТИНИЦА с полями: название, адрес,
телефон, категория, количество мест.
4. Структура КИНОТЕАТР с полями: название, адрес,
телефон, количество мест, цена билетов.
5. Структура ТОВАР с полями: название, страна,
производитель, артикул, цена.
6. Структура АВТОМОБИЛЬ с полями: модель, страна,
дата изготовления, мощность двигателя, стоимость.
7. Структура ПРЕДМЕТ с полями: название, год,
факультет, кафедра, количество часов.
8. Структура МУЗЕЙ с полями: название, адрес, телефон,
количество экспонатов, цена билета.
9. Структура ДОМ с полями: адрес, телефон, площадь,
количество комнат, стоимость.
10. Структура ГОСУДАРСТВО с полями: название,
столица, площадь, население, внутренний валовой
продукт.
11. Структура АВИАРЕЙС с полями: номер, пункт
назначения, время вылета, время прибытия, цена
билета.
12. Структура АПТЕКА с полями: название, адрес,
телефон, начало работы, окончание работы.
13. Структура РЕСТОРАН с полями: название, адрес,
телефон, категория, количество мест, специализация.
14. Структура УНИВЕРСИТЕТ с полями: название, адрес,
телефон, количество факультетов, число студентов.
15. Структура КОМПЬЮТЕР с полями: модель, процессор,
память, быстродействие, цена.
16
Лабораторная работа 7
17
Лабораторная работа 8
18
Лабораторная работа 9
19
Лабораторная работа 10
20
Лабораторная работа 11
21
Лабораторная работа 12
Варианты заданий:
22
6. Отсортировать элементы одномерного массива с
помощью метода вставки по возрастанию и по
убыванию.
7. Отсортировать элементы одномерного массива с
помощью шейкерной сортировки на основе
пузырьковой сортировки по возрастанию и по
убыванию.
8. Отсортировать элементы одномерного массива с
помощью метода Шелла на основе сортировки
вставками по возрастанию и по убыванию.
9. Отсортировать элементы одномерного массива с
помощью метода быстрой сортировки по возрастанию
и по убыванию.
10. Отсортировать элементы двух одномерных массивов с
помощью метода слияния по возрастанию и по
убыванию.
11. Отсортировать элементы одномерного массива с
помощью стандартной функции qsort () для различных
типов массива.
12. Осуществить поиск элемента одномерного массива с
помощью стандартной функции bsearch () для
различных типов массива.
13. Отсортировать элементы одномерного массива с
помощью метода Шелла на основе пузырьковой
сортировки по возрастанию и по убыванию.
14. Отсортировать элементы одномерного массива с
помощью метода слияния по возрастанию и по
убыванию.
15. Отсортировать элементы одномерного массива с
помощью шейкерной сортировки на основе сортировки
выбором по возрастанию и по убыванию.
23
Требования к оформлению отчёта
по лабораторной работе
2. Содержание отчёта
24
Литература
2. Шилдт Герберт
Полный Справочник по С 4-ое издание, пер. с англ. –
М. : Изд. Дом «Вильямс», 2002.
3. Logofătu Doina
Bazele programării in C. Aplicaţii. – Iaşi: Polirom, 2006.
5. Седжвик Роберт
Фундаментальные алгоритмы на С. “ДиаСофт”, 2004.
6. Heileman Gregory L.
Data Structures, Algorithms and Object Oriented
Programming. – McGraw – Hill, 1996.
25
Содержание
Лабораторная работа 1
Использование операторов проверки условия и
операторов цикла на языке Си 3
Лабораторная работа 2
Обработка одномерных массивов на языке Си 8
Лабораторная работа 3
Обработка двумерных массивов на языке Си 10
Лабораторная работа 4
Динамическое выделение памяти для двумерных
массивов. Использование функций и указателей 12
Лабораторная работа 5
Обработка символов и строк на языке Си 14
Лабораторная работа 6
Обработка массива структур и использование
файлов на языке Си 16
Лабораторная работа 7
Абстрактный тип данных «Массив структур».
Реализация на языке Си 17
Лабораторная работа 8
Абстрактный тип данных «Односвязный список» 18
Лабораторная работа 9
Абстрактный тип данных «Односвязный
список» (Продолжение) 19
26
Лабораторная работа 10
Абстрактный тип данных «Бинарное дерево».
Использование итеративных алгоритмов 20
Лабораторная работа 11
Абстрактный тип данных «Бинарное дерево».
Использование рекурсивных алгоритмов 21
Лабораторная работа 12
Программирование алгоритмов поиска и
сортировки на языке Си 22
Литература 25
27
ПРОГРАММИРОВАНИЕ, СТРУКТУРЫ ДАННЫХ И
АЛГОРИТМЫ НА ЯЗЫКЕ СИ
Redactor:
_____________________________________________________
28