рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

ЛАБОРАТОРНАЯ РАБОТА N 6

ЛАБОРАТОРНАЯ РАБОТА N 6 - раздел Программирование, ПРОГРАММИРОВАНИЕ НА ЯЗЫКАХ ВЫСОКОГО УРОВНЯ Работа Со Структурами   1 Понятие Табличной Структуры ...

Работа со структурами

 

1 Понятие табличной структуры данных

 

Таблицей называется структура данных, элементы которой представляют собой записи, состоящие из нескольких полей. При этом одно из полей называется полем ключа, а остальные - полями данных. Каждая запись таблицы имеет уникальный код в поле ключа. По этому коду осуществляется поиск данных в таблице. Задача поиска в таблице имеет следующую формулировку.

Табличная структура Т состоит из множества записей Тi , i=1¸n, каждая из которых имеет поле ключа К i и множество полей данных Dj , j=1¸m. Определить значения полей данных такой записи таблицы, поле ключа которой содержит значение x , называемое аргументом поиска.

Пример табличной структуры

Планета Радиус (в радиусах Земли) Масса (в массах Земли)
Меркурий 0,382 0,055
Венера 0,950 0,816
Земля 1,000 1,000
Марс 0,531 0,107
Юпитер 11,2
Сатурн 9,5 95,1
Уран 3,9 14,6
Нептун 4,0 17,2
Плутон 0,45 0,002

Ключом в приведенной таблице является поле, озаглавленное «Планета», а поля «Радиус» и «Масса» являются полями данных. Результатом решения задачи поиска в такой таблице для аргумента поиска, например, x=Юпитер будут значения данных 11,2 и 318.

Таблица называется упорядоченной, если ее записи каким-либо образом упорядочены по значению поля ключа. Например, если при i<j значения ключей Кi < Кj. Очевидно, что для упорядоченной таблицы могут использоваться алгоритмы поиска записи, минимизирующие время поиска. Время поиска, измеряемое в количестве просмотренных в процессе поиска записей, является основной характеристикой способа упорядоченности таблицы и, соответственно, алгоритма решения задачи поиска. Таблица вышерассмотренного примера является неупорядоченной. (Ее можно было бы упорядочить, расположив названия планет в алфавитном порядке). Единственный способ организации поиска в такой таблице - линейный поиск: последовательный просмотр всех записей, начиная с первой, до тех пор, пока не будет обнаружен заданный аргумент поиска, либо пока по окончании просмотра всей таблицы не будет сделан вывод об отсутствии в ней записи с искомым ключом.

Для организации таблицы средствами языка С удобно воспользоваться типом struct со следующим синтаксисом:

struct <имя типа> {

<список полей>

}

<список полей>::=<поля>|<список полей>;<поля>

<поля>::=<тип> <имена>

<имена>::=<имя>|<имена>,<имя>

Описав одну запись таблицы в виде типа struct, собрать множество записей в единую таблицу можно, например, с помощью одномерного массива. Так, вышеприведенная таблица в C-программе может быть описана в виде массива table:

struct line {

char *planet;

float radius,mass;

};

line table[9];

 

2. Задание на лабораторную работу

 

Полагая, что некоторая табличная структура представляет собой последовательность записей, содержащих по два поля каждая: поле ключа типа char* и поле данных типа int, - написать функции включения новой записи в таблицу и выборки данных из таблицы по заданному ключу, соблюдая при этом условие уникальности каждого значения поля ключа.

 

 

– Конец работы –

Эта тема принадлежит разделу:

ПРОГРАММИРОВАНИЕ НА ЯЗЫКАХ ВЫСОКОГО УРОВНЯ

На сайте allrefs.net читайте: ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Российской Федерации...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: ЛАБОРАТОРНАЯ РАБОТА N 6

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Санкт-Петербург
Составители: Т.М.Максимова   Рецензент: В.П.Попов     В методические указания включены краткие теоретические сведения, необходимые д

ОБЩИЕ ТРЕБОВАНИЯ К СОДЕРЖАНИЮ ОТЧЕТОВ
  В методические указания включены задания на 8 лабораторных работ, содержанием которых является разработка программы на языке С. Процесс разработки программы студент должен отразить

Текст программы
  void sort(int *a, char n) //функция сортировки n первых элементов (n<=100) массива a { bool f=true; //признак выполнения операции обмена char

ЛАБОРАТОРНАЯ РАБОТА N 1
Встроенные типы данных   1. Основные типы данных Язык С поддерживает несколько базовых типов данных, которые также называют простыми. Перечислим некоторые из них.

ЛАБОРАТОРНАЯ РАБОТА N 2
Программирование операций ввода-вывода   1.Некоторые библиотечные функции для работы с файлами   Функции файлового ввода-вывода используют указатель фа

ЛАБОРАТОРНАЯ РАБОТА № 3
Целочисленная арифметика   1. Введение в постановку задачи 1.1. Позиционные системы счисления При записи числа в позиционной системе счисления вклад каждой

ЛАБОРАТОРНАЯ РАБОТА № 4
Вещественная арифметика   1. Генератор псевдослучайных чисел   Для многих задач программирования, связанных с математическими моделями случайных явлени

ЛАБОРАТОРНАЯ РАБОТА № 5
Операции над многословными операндами   1. Многословные операнды   Арифметические выражения в языке C представляют собой формулы для вычисления значени

ЛАБОРАТОРНАЯ РАБОТА N 7
Операции над списковыми структурами   1.Принципы реализации динамических структур данных   Линейный список является примером динамической структуры дан

ЛАБОРАТОРНАЯ РАБОТА N 8
Шаблоны функций   1.Перегрузка и шаблоны функций   В одной программе может быть размещено несколько функций с одним и тем же именем, если списки формал

БИБЛИОГРАФИЧЕСКИЙ СПИСОК
  1. Вирт Н. Алгоритмы и структуры данных. - М.: Мир,1989. - 360с. 2. Карпов Б., Баранова Т. С++: Специальный справочник. – СПб.: Питер, 2001. – 480с. 3. Кнут Д. Иск

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги