Проектирование программы для обслуживания баз данных

  • Вид работы:
    Практическое задание
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    403,38 Кб
  • Опубликовано:
    2014-08-14
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Проектирование программы для обслуживания баз данных

Задание №1


Разработать программу для ведения базы данных, организованной на файлах.

Информация о людях

1. Поиск людей, у которых день рождения в заданном для поиска месяце.

1. Фамилия и имя (в строке через пробел)

1.

2. Номер телефона (число)

2. Поиск людей по первым трем буквам фамилии.

3. Дата рождения (массив из трех чисел)



1.1    Алгоритм программы



 

.2 Тестовые наборы


№ теста

Ввод

Ожидаемый результат

1

5: Pet

Petrov Roman 985634129 5.2.90

2

4: 2

Seleznev Ivan 987654321 12.2.9; Petrov Roman 985634129 5.2.90

3

Ivanov Petr 981234567 4.7.92

 

.3 Код программы


#include <stdio.h>

#include <locale.h>

#include <Windows.h>

#define SIZE 100

#define MAX 1000size_people;

//Структураinformation_of_the_people

{famile [10];name [10];number_telephone;date_of_birthday [3];

} people [SIZE];

//Основные функцииcreation_the_data ();see_the_data ();read_the_data_on_the_file ();

//Функции определенные заданиемsearch_the_people_of_mounth ();search_the_people_of_birthday ();

//Менюmain (void)

{(LC_CTYPE, "rus");menu;("--------------------------------------------------------------------------------");("Меню");("\n\tОсновные функции:\n1 - Создание записей\n2 - Просмотр записей\n3 - Считывание записей из файла");("\n\tФункции определенные заданием:\n4 - Поиск людей за заданным месяцем в дате рождения\n5 - Поиск людей за первыми тремя буквами фамилии");("\n\tФункция выхода:\n6 - Выход из программы\n");("--------------------------------------------------------------------------------");("Поле ввода: ");("%i", &menu);("--------------------------------------------------------------------------------");(menu)

{1:_the_data (); system ("cls"); main (); ;2: _the_data (); system ("cls"); main ();;3: _the_data_on_the_file (); system ("cls"); main ();;4:_the_people_of_mounth (); system ("cls"); main ();;5:_the_people_of_birthday (); system ("cls"); main ();;6:0;: ("\tОшибка! Некорректный ввод данных!\n"); system ("pause"); system ("cls"); fflush (stdin); main ();;

}

}

//1 - Создание записейcreation_the_data ()

{*fsave;=fopen ("base_of_data.txt", "wt");size;("Введите количество людей: "); (scanf ("%i", &size) != 1)

{(stdin);("\tОшибка! Некорректный ввод данных!\nВведите корректные данные: ");

}_people = size;("\n");(int i=0; i<size; i++)

}(fsave);("Процесс завершился...\n");("pause");

}

//2 - Просмотр записейsee_the_data ()

{("\tСписок данных:\n");(int i=0; i<size_people; i++)

{("%i Фамилия и имя: %s %s\n", i+1, people [i].famile, people [i].name);("Номер телефона: %d\n", people [i].number_telephone);("Дата рождения: %i.%i.%i\n", people [i].date_of_birthday [0], people [i].date_of_birthday [1], people [i].date_of_birthday [2]);("\n");

}("Процесс завершился...\n");("pause");

}

//3 - Считывание записей из файлаread_the_data_on_the_file ()

{i=0;buf [MAX];*fsave;=fopen ("base_of_data.txt", "rt");(!feof (fsave))

{(fsave,"%s %s %d %i.%i.%i\n", people [i].famile, people [i].name, &people [i].number_telephone, &people [i].date_of_birthday [0], &people [i].date_of_birthday [1], &people [i].date_of_birthday [2]);++;

}(fsave);_people=i;("Процесс завершился...\n");("pause");

}

//4 - Поиск людей за заданным месяцем в дате рожденияsearch_the_people_of_mounth ()

{mounth, i;("Введите месяц в дате рождения: ");(scanf ("%i", &mounth) != 1 || mounth > 12)

{(stdin);("\tОшибка! Некорректный ввод данных!\nВведите корректные данные: ");

}("\n\tСписок людей:\n");(i=0; i<size_people; i++)(people [i].date_of_birthday [1] == mounth)

{("%i Фамилия и имя: %s %s\n", i+1, people [i].famile, people [i].name);("Номер телефона: %d\n", people [i].number_telephone);("Дата рождения: %i.%i.%i\n", people [i].date_of_birthday [0], people [i].date_of_birthday [1], people [i].date_of_birthday [2]);("\n");

}("Процесс завершился...\n");("pause");

}

//5 - Поиск людей за первыми тремя буквами фамилииsearch_the_people_of_birthday ()

{(stdin);("\tОшибка! Некорректный ввод данных!\nВведите корректные данные: ");("%s", &famile);

}("\n\tСписок людей:\n");(i=0; i<size_people; i++)

{= 0;const la = strlen (people [i].famile);(int t = 0 ; t < la; t++)

{tmp[MAX] = "";(people [i].famile [t] == famile [0])

{j = t;= 0;(people [i].famile [j] == famile [k])

{[k] = people [i].famile [j];++; ++;

}(!(strcmp(famile,tmp)))++;(famile[0] == famile[1])+= strlen(famile) - 1;

}

}    (cnt>0)

{("%i Фамилия и имя: %s %s\n", i+1, people [i].famile, people [i].name);("Номер телефона: %d\n", people [i].number_telephone);("Дата рождения: %i.%i.%i\n", people [i].date_of_birthday [0], people [i].date_of_birthday [1], people [i].date_of_birthday [2]);("\n");

}

}("Процесс завершился...\n");("pause");

}

.4 Результат работы программы

№ теста

Ввод

Результат

Вывод

1

Menu = 5: Pet

Тест пройден

2

Menu = 4: 2

Seleznev Ivan 987654321 12.2.9; Petrov Roman 985634129 5.2.90

Тест пройден

3

Menu = 5: Iva

Ivanov Petr 981234567 4.7.92

Тест пройден




программа информационный алгоритм

1.5 Вывод о работоспособности программы


Программа прошла тестирование: в результате выполнения тестов программа выдала ожидаемые результаты. Программа - работоспособна.

Похожие работы на - Проектирование программы для обслуживания баз данных

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!