Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Добавление новой строки с данными в БД




 
 

 


5. Удаление строки из БД

 
 

 


 
 

 

 


       
   
 


 

 
 

 

 


 

i=j

 

 

 
 

 

 


Алфавитная сортировка БД по номеру группы

 
 

 

 


7. Информация о количестве студентов

 
 

 


Поиск по студентам

 
 


 
 

 

 


Поиск номера варианта по фамилии

 
 


 
 

 


Дерево функций

 

 

 


Граф диалога

 

 
 

 


№ вершины графа Операция
  Запуск программы
  Меню программы
  Создание файла
  Вывод таблицы на экран
  Сохранение таблицы в файл
  Добавление записи
  Удаление записи
  Сортировка по номеру группы
  Информация о количестве студентов
  Поиск по студентам
  Поиск номера варианта

 

Заключение

В данной курсовой работе была разработана программа, позволяющая работать с базой данных «KURS» в соответствии с поставленными требованиями. Программа включает в себя процедуры, обеспечивающие выполнение всех поставленных задач для работы с базой данных. Главное меню программы позволяет обеспечить доступ к функциям программы и к сведениям, хранящимся в базе данных «KURS».

С помощью класса статических массивов эффективно использовалась память, необходимая для работы программы. Проведенное тестирование показало работоспособность программы и соответствие её требованиям задания на курсовой проект.

 

 

Список используемой литературы.

1. Б. Страуструп. Язык программирования С++, 3-е издпер. с англ. - М.: "Бином", СПб.: "Невский диалект", 1999. - 991 с., ил.

2. Т.А. Павловская. Ю.А. Щупак С/C++. Программирование на языке высокого уровня. – СПб.: Питер,2007. – 461 с.: ил.

3. Прата. Объектно-ориентированное программирование в C++. 2 изд. – ЭКСМО, 2007. - 336 с.: ил.

4. Т.А. Павловская, Ю.А. Щупак. С/C++. Структурное программирование: Практикум. – СПб.: Питер, 2007. – 239 с.: ил.

 

 

Приложение 1. Описание разработанных функций

 

Название функции Назначение функции
void outputfile() Сохранение текущей БД в txt файл
void inputfile() Ввод БД из txt файла
void add() Добавление новой строки с данными в БД
void deletekurs() Удаление строки из БД
void output() Вывод текущей БД на экран
void sort_gr() Алфавитная сортировка по названию товара
void poisk_kol() Информация о количестве студентов
void poisk_st() Поиск по студентам
void poisk_var() Поиск номера варианта

 

 

Описание глобальных переменных:

struct price char fam[l] char im[l] char prep[l] int var int gr int oc   -структура «KURS» -фамилия -имя -фамилия преподавателя -номер варианта -номер группы -оценка

 

Приложение 2. Листинг программы

#include<iostream.h>

#include<fstream.h>

#include<string.h>

#include<stdlib.h>

#include<conio.h>

#include<iomanip.h>

const int l=31;

 

struct kurs

{char fam[l], im[l], prep[l];

int var, gr, oc;

};

 

const int N=100;

class kursov

{private:

kurs x[N];

int n;

public:

void outputfile();

void inputfile();

void add();

void deletekurs();

void output();

void sort_gr();

void poisk_kol();

void poisk_st();

void poisk_var();

};

 

int main()

{ kursov a;

setlocale(LC_ALL, "Russian");

int j,m;

while(1)

{ cout<<"1. Загрузка из файла.\n";

cout<<"2. Вывод на экран.\n";

cout<<"3. Сохранение таблицы в файл.\n";

cout<<"4. Добавление записи.\n";

cout<<"5. Удаление записи.\n";

cout<<"6. Сортировка по группам.\n";

cout<<"7. Информация о количестве студентов.\n";

cout<<"8. Поиск по студентам.\n";

cout<<"9. Поиск по номеру варианта.\n";

cout<<"10. Выход.\n\n";

cout<<"Ваш выбор (1%10):";

cin>>j;

switch(j)

{ case 1: a.inputfile(); break;

case 2: a.output(); break;

case 3: a.outputfile();break;

case 4: a.add(); break;

case 5: a.deletekurs(); break;

case 6: a.sort_gr();break;

case 7: a.poisk_kol();break;

case 8: a.poisk_st();break;

case 9: a.poisk_var();break;

case 10: cout<<"Конец программы"; getch(); exit(0);

default:cout<<"Нет пункта!"; getch(); break;

}

}

}

 

 

void kursov:: inputfile()

{ifstream fin;

char file[l];

cout<<"Имя файла:"; cin>>file;

fin.open(file);

if(fin==NULL) {cout<<"Не открывается.\n"; getch(); exit(1);}

n=0;

do{fin>>x[n].fam>>x[n].im>>x[n].var>>x[n].gr>>x[n].prep>>x[n].oc;

n++;

}while(fin.good());

n--;

cout<<"Файл введен.\n"; getch();

fin.close();

output();

}

 

void kursov:: output()

{ int i;

cout<<"\n----------------------------------------------------------------------------\n";

cout<<"\n| N | ФАМИЛИЯ | ИМЯ | N ВАРИАНТА | N ГРУППЫ | ПРЕПОДАВАТЕЛЬ | ОЦЕНКА |\n";

cout<<"\n----------------------------------------------------------------------------\n";

for(i=0;i<n;i++)

{cout<<"|"<<setw(3)<<i+1

<<"|"<<setw(11)<<setiosflags(ios::left)<<x[i].fam

<<"|"<<setw(9)<<setiosflags(ios::left)<<x[i].im

<<"|"<<setw(12)<<setiosflags(ios::left)<<x[i].var

<<"|"<<setw(10)<<setiosflags(ios::left)<<x[i].gr

<<"|"<<setw(15)<<setiosflags(ios::left)<<x[i].prep

<<"|"<<setw(8)<<setiosflags(ios::left)<<x[i].oc<<"|"<<endl;

}

cout<<"\n---------------------------------------------------------------------------\n";

getch();

}

 

 

void kursov:: add()

{ kurs t;

if(n==N) {cout<<"Массив переполнен.\n"; getch(); exit(0);}

cout<<"Фамилия:"; cin>>t.fam;

cout<<"Имя:"; cin>>t.im;

cout<<"Номер варианта:"; cin>>t.var;

cout<<"Номер группы:"; cin>>t.gr;

cout<<"Фамилия преподавателя:"; cin>>t.prep;

cout<<"Оценка:"; cin>>t.oc;

x[n]=t; n++;

cout<<"Запись добавлена.\n";

getch();

output();

}

 

void kursov:: deletekurs()

{char ch;

int i,j;

output();

cout<<"Номер удаленной строки:";

cin>>j;

if(j<1||j>n) {cout<<"Нет такой строки.\n"; getch(); exit(0);}

cout<<setw(20)<<x[j-1].fam<<endl;

cout<<"Удалить?(y/n):"; cin>>ch;

if(ch=='y')

{for(i=j;i<n;i++)

x[i-1]=x[i];

n--;

}

cout<<"Запись удалена.\n"; getch();

}

 

void kursov:: outputfile()

{ofstream out;

char file[l];

int i;

cout<<"Имя файла:";

cin>>file;

out.open(file);

if (out==NULL) {cout<<"Не найден"; getch(); exit(1);}

for(i=0;i<n;i++)

{out<<setw(11)<<setiosflags(ios::left)<<x[i].fam

<<setw(9)<<setiosflags(ios::left)<<x[i].im

<<setw(12)<<setiosflags(ios::left)<<x[i].var

<<setw(11)<<setiosflags(ios::left)<<x[i].gr

<<setw(15)<<setiosflags(ios::left)<<x[i].prep

<<setw(8)<<setiosflags(ios::left)<<x[i].oc<<endl;}

out.close();

cout<<"Файл сохранен"; getch();

}

 

void kursov:: sort_gr()

{int i,fl,nn;

kurs t;

nn=n;

do {fl=0; nn--;

for(i=0;i<nn;i++)

if(x[i].gr>x[i+1].gr)

{t=x[i]; x[i]=x[i+1]; x[i+1]=t; fl=1;}

}while(fl==1);

output();

}

 

void kursov:: poisk_kol()

{int i,s = 0;

char prep[l];

cout<<"Введите фамилию преподавателя: "; cin>>prep;

int f=0;

for(i=0;i<n;i++)

if(strcmp(x[i].prep,prep)==0)

{ cout<<"Студент: ";

cout<<setw(8)<<setiosflags(ios::left)<<x[i].fam<<" "<<x[i].im<<endl; s=s+1;

f++;

}getch();

cout<<"Количество студентов: "<<s<<endl;

if(f==0) {cout<<"Нет такой записи\n"; getch();}

}

 

void kursov:: poisk_st()

{int i,k,oc;

cout<<"Введите оценку:"; cin>>oc;

int f=0;

for(i=0;i<n;i++)

if(oc==x[i].oc)

{ cout<<"Студент: ";

cout<<setw(8)<<setiosflags(ios::left)<<x[i].fam<<" "<<x[i].im<<endl;

f++;

} getch();

if(f==0) {cout<<"Нет такой записи\n"; getch();}

}

 

void kursov:: poisk_var()

{int i;

char fam[l];

cout<<"Введите фамилию студента:"; cin>>fam;

int f=0;

for(i=0;i<n;i++)

if(strcmp(x[i].fam,fam)==0)

{ cout<<"Номер варианта: ";

cout<<setw(8)<<setiosflags(ios::left)<<x[i].var<<endl;

f++;

}getch();

if(f==0) {cout<<"Нет такой записи\n"; getch();}

}

 

 





Поделиться с друзьями:


Дата добавления: 2016-10-22; Мы поможем в написании ваших работ!; просмотров: 350 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Стремитесь не к успеху, а к ценностям, которые он дает © Альберт Эйнштейн
==> читать все изречения...

2153 - | 2108 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.01 с.