p align="left">Далее программа сравнивает эти строки с помощью функции strcmp с элементами массива student . Если во всех трех случаях функция возвращает 0, то выводится полностью элемент массива, которым является структура с данными об одном студенте. Иначе программа выводит сообщение об отсутствии такого студента. void eight(student student1[100],predmety predmety1[100]) { char familia1[30]; char imya1[30]; char otchestvo1[30]; cout<<"\n vvedite familiy stydenta :"; cin>>familia1; cout<<"\n vvedite imya studenta:"; cin>>imya1; cout<<"\n vvedite otchestvo studenta:"; cin>>otchestvo1; for (i=0;i<kolvo_student;i++) { if ((strcmp(familia1,student1[i].familia)==0)&&(strcmp(imya1,student1[i].imya)==0)&&(strcmp(otchestvo1,student1[i].otchestvo)==0)) { cout<<"\n familia: "; cout<<student1[i].familia; cout<<"\n imya:"; cout<<student1[i].imya; cout<<"\n otchestvo:"; cout<<student1[i].otchestvo; cout<<"\n god_rozhdenia:"; cout<<student1[i].god_rozhdenia; cout<<"\n mesyac_rozhdenia:"; cout<<student1[i].mesyac_rozhdenia; cout<<"\n den_roshdenia:"; cout<<student1[i].den_roshdenia; cout<<"\n budzhet_ili_contract:"; if (student1[i].budzhet_ili_contract==1) { cout<<"\n budzhetnic"; } else if (student1[i].budzhet_ili_contract==0) {cout<<"\n contractnic"; } cout<<"\n nomer_telefona:"; cout<<student1[i].nomer_telefona; cout<<"\n strana:"; cout<<student1[i].strana; cout<<"\n gorod:"; cout<<student1[i].gorod; cout<<"\n ylica:"; cout<<student1[i].ylica; cout<<"\n dom(chislom):"; cout<<student1[i].dom; cout<<"\n nomer_kvartiry:"; cout<<student1[i].nomer_kvartiry; cout<<"\n Ocenki studenta:"<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo; cout<<endl; for (j=0;j<kolvo_predmetov;j++) for (k=0;k<kolvo_predmetov;k++) { cout<<predmety1[j].nazvanie_predmeta; cout<<" ocenka:"<<student1[i].ball[k]; cout<<endl; j++; } } else { cout<<endl<<"\n takogo stydenta net v baze"; }} } Рисунок 8-работа 8 пункта меню 5 ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ Данная программа предназначена для создания базы данных с информацией о студентах. Программа состоит из одного файла с названием base.exe. Требования к ресурсам : CPU 1.00 GHz Оперативная память: 256 МБ Операционная система: Windows 95 выше Вывод Программа полностью выполняет все пункты меню Рисунок 1 -работа программы СПИСОК ИССПОЛЬЗОВАНОЙ ЛИТЕРАТУРЫ 1. Страуструп Б. Язык программирования С++. Часть 1. -- Киев: "ДиаСофт", 1993. -- 264 с. 2. Страуструп Б. Язык программирования С++. Часть 2. -- Киев: "ДиаСофт", 1993. -- 296 с. 3. Х.М.Дейтел, П.Дж. Дейтел Как программировать на С++.- М.:ЗАО «Издательство БИНОМ», 2000 г. -- 1024 с. 4. Глушаков С.В. и др. Язык программирования С++. --Харьков: Фолио, 2002. -- 500 с. ПРИЛОЖЕНИЕ А ТЕКСТ ПРОГРАММЫ #include <iostream.h> #include <conio.h> #include <string.h> int punkt; int i,j,k; int budzhet=0; int contract=0; int kolvo_predmetov; int kolvo_student; struct predmety { char nazvanie_predmeta[50]; }; struct student { char familia [30]; char imya [30]; char otchestvo [30]; int god_rozhdenia ; int mesyac_rozhdenia ; int den_roshdenia; int budzhet_ili_contract; int nomer_telefona; char strana[40]; char gorod[30]; char ylica[40]; int ball[100]; int dom; int nomer_kvartiry; int srednyi_ball; }; student base[100]; student *student1=base; predmety ocenki[100]; predmety *predmety1=ocenki; float sortirovka(int ball[100], int kolvo_predmetov) { float sum=0; for (int i=0;i<kolvo_predmetov;i++) { sum+=ball[i]; } return sum/kolvo_predmetov; } void one (student student1[100]) { for (i=0;i<kolvo_student;i++) { if ((base[i].srednyi_ball>=0)&&(base[i].srednyi_ball<=60)) { cout<<"\n ---------------------------------------------------------------"; cout<<"\n studenty imeyshie sredniy ball nizhe 60:"; cout<<"\n ---------------------------------------------------------------"; cout<<endl; cout<<student1[i].familia<<" "; cout<<student1[i].imya<<" "; cout<<student1[i].otchestvo<<" "; cout<<"srednyi ball:"<<base[i].srednyi_ball<<endl; cout<<"\n ---------------------------------------------------------------"; } if ((base[i].srednyi_ball>=60)&&(base[i].srednyi_ball<=75)) { cout<<"\n ---------------------------------------------------------------"; cout<<"\n studenty imeyshie sredniy ball bolshe 60 i nizhe 75:"; cout<<"\n ---------------------------------------------------------------"; cout<<endl; cout<<student1[i].familia<<endl; cout<<student1[i].imya<<endl; cout<<student1[i].otchestvo<<endl; cout<<"srednyi ball:"<<base[i].srednyi_ball<<endl; cout<<"\n ---------------------------------------------------------------"; } if ((base[i].srednyi_ball>=75)&&(base[i].srednyi_ball<=90)) { cout<<"\n ---------------------------------------------------------------"; cout<<"\n studenty imeyshie sredniy ball bolshe 75 i nizhe 90:"; cout<<"\n ---------------------------------------------------------------"; cout<<endl; cout<<student1[i].familia<<endl; cout<<student1[i].imya<<endl; cout<<student1[i].otchestvo<<endl; cout<<"srednyi ball:"<<base[i].srednyi_ball<<endl; cout<<"\n ---------------------------------------------------------------"; } if ((base[i].srednyi_ball>=90)&&(base[i].srednyi_ball<=100)) { cout<<"\n ---------------------------------------------------------------"; cout<<"\n studenty imeyshie sredniy ball bolshe 90 nizhe 100:"; cout<<"\n ---------------------------------------------------------------"; cout<<endl; cout<<student1[i].familia<<endl; cout<<student1[i].imya<<endl; cout<<student1[i].otchestvo<<endl; cout<<"srednyi ball:"<<base[i].srednyi_ball<<endl; cout<<"\n ---------------------------------------------------------------"; } } k++; } void two(student student1[100],predmety predmety1[100]) { char familia[30]; char imya[30]; char otchestvo[30]; cout<<"\n vvedite familiy stydenta :"; cin>>familia; cout<<"\n vvedite imya studenta:"; cin>>imya; cout<<"\n vvedite otchestvo studenta:"; cin>>otchestvo; for (i=0;i<kolvo_student;i++) { if ((strcmp(familia,student1[i].familia)==NULL)&&(strcmp(imya,student1[i].imya)==NULL)&&(strcmp(otchestvo,student1[i].otchestvo)==NULL)) { cout<<"\n Ocenki studenta:"<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo; cout<<endl; for (j=0;j<kolvo_predmetov;j++) for (k=0;k<kolvo_predmetov;k++) { cout<<predmety1[j].nazvanie_predmeta; cout<<" ocenka:"<<student1[i].ball[k]; cout<<endl; j++; } } } } void three(student student1[100]) { int inogorodnie=0; char gorod[20]; cout<<"\n vvedite nazvani goroda gde naxoditsya instityt:"; cin>>gorod; cout<<"\n inogorodnie studenty:"; for (i=0;i<kolvo_student;i++) { if (strcmp(gorod,student1[i].gorod)!=0) { cout<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo<<endl; inogorodnie++; } } cout<<"\n colichestvo inogorodnyx stydentov:"<<inogorodnie; } void four(student student1[100]) { int gorodskie=0; char gorod[20]; cout<<"\n vvedite nazvani goroda gde naxoditsya instityt:"; cin>>gorod; cout<<"\n inogorodnie studenty:"; for (i=0;i<kolvo_student;i++) { if (strcmp(gorod,student1[i].gorod)==0) { cout<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo<<endl; gorodskie++; } } cout<<"\n colichestvo gorodskix stydentov:"<<gorodskie; } void five(student student1[100]) { cout<<"\n budzhetniki:"<<endl; int budzhet=0; for (i=0;i<kolvo_student;i++) { if(student1[i].budzhet_ili_contract==1) { cout<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo<<endl; budzhet++;} } cout<<"\n colichestvo budzhetnicow:"<<budzhet; } void six(student student1[100]) { cout<<"\n kontraktnici:"<<endl; int contract=0; for (i=0;i<kolvo_student;i++) { if(student1[i].budzhet_ili_contract==0) { cout<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo<<endl; contract++; } } cout<<"\n colichestvo kontraktnikow:"<<contract; } void seven(student student1[100]) { cout<<"\n spisok studentov odnogo goda rozhdenia:"; for (i=0;i<kolvo_student;i++) { if (student1[i].god_rozhdenia==student1[i+1].god_rozhdenia) { cout<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo<<endl; cout<<student1[i+1].familia<<" "<<student1[i+1].imya<<" "<<student1[i+1].otchestvo; cout<<endl; } } } void eight(student student1[100],predmety predmety1[100]) { char familia1[30]; char imya1[30]; char otchestvo1[30]; cout<<"\n vvedite familiy stydenta :"; cin>>familia1; cout<<"\n vvedite imya studenta:"; cin>>imya1; cout<<"\n vvedite otchestvo studenta:"; cin>>otchestvo1; for (i=0;i<kolvo_student;i++) { if ((strcmp(familia1,student1[i].familia)==0)&&(strcmp(imya1,student1[i].imya)==0)&&(strcmp(otchestvo1,student1[i].otchestvo)==0)) { cout<<"\n familia: "; cout<<student1[i].familia; cout<<"\n imya:"; cout<<student1[i].imya; cout<<"\n otchestvo:"; cout<<student1[i].otchestvo; cout<<"\n god_rozhdenia:"; cout<<student1[i].god_rozhdenia; cout<<"\n mesyac_rozhdenia:"; cout<<student1[i].mesyac_rozhdenia; cout<<"\n den_roshdenia:"; cout<<student1[i].den_roshdenia; cout<<"\n budzhet_ili_contract:"; if (student1[i].budzhet_ili_contract==1) { cout<<"\n budzhetnic"; } else if (student1[i].budzhet_ili_contract==0) {cout<<"\n contractnic"; } cout<<"\n nomer_telefona:"; cout<<student1[i].nomer_telefona; cout<<"\n strana:"; cout<<student1[i].strana; cout<<"\n gorod:"; cout<<student1[i].gorod; cout<<"\n ylica:"; cout<<student1[i].ylica; cout<<"\n dom(chislom):"; cout<<student1[i].dom; cout<<"\n nomer_kvartiry:"; cout<<student1[i].nomer_kvartiry; cout<<"\n Ocenki studenta:"<<student1[i].familia<<" "<<student1[i].imya<<" "<<student1[i].otchestvo; cout<<endl; for (j=0;j<kolvo_predmetov;j++) for (k=0;k<kolvo_predmetov;k++) { cout<<predmety1[j].nazvanie_predmeta; cout<<" ocenka:"<<student1[i].ball[k]; cout<<endl; j++; } } else { cout<<endl<<"\n takogo stydenta net v baze"; }} } void main() { cout<<"\n ---------------------------------------------------------------"<<endl; cout<<"\n vvedite kolichestvo stydentov:"; cin>>kolvo_student; cout<<"\n ---------------------------------------------------------------"<<endl; cout<<"\n ---------------------------------------------------------------"<<endl; cout<<"\n vvedite kolichestvo predmetov:"; cin>>kolvo_predmetov; cout<<"\n ---------------------------------------------------------------"<<endl; cout<<"\n vvedite nazvanie predmetov:"; for (j=0;j<kolvo_predmetov;j++) { cout<<"\n "<<j+1<<")"; cin>>ocenki[j].nazvanie_predmeta; } cout<<"\n ---------------------------------------------------------------"<<endl; cout<<"\n vvedite dannye o studentax:"; cout<<"\n ---------------------------------------------------------------"<<endl; for (i=0;i<kolvo_student;i++) { cout<<"\n STUDENT"<<i+1; cout<<"\n ---------------------------------------------------------------"<<endl; cout<<"\n familia: "; cin>>base[i].familia; cout<<"\n imya:"; cin>>base[i].imya; cout<<"\n otchestvo:"; cin>>base[i].otchestvo; cout<<"\n god_rozhdenia(chislom):"; cin>>base[i].god_rozhdenia; cout<<"\n mesyac_rozhdenia(chislom):"; cin>>base[i].mesyac_rozhdenia; cout<<"\n den_roshdenia(chislom):"; cin>>base[i].den_roshdenia; cout<<"\n budzhet_ili_contract:"; cout<<"\n esli budzhet vvedite 1 , esli kontrakt to vvedite 0"; cout<<endl; cin>>base[i].budzhet_ili_contract; if ((base[i].budzhet_ili_contract!=1)&&(base[i].budzhet_ili_contract!=0)) { cout<<"\n esli budzhet vvedite 1 , esli kontrakt to vvedite 0!!!!!"; } if (base[i].budzhet_ili_contract==1) { budzhet++; } else if (base[i].budzhet_ili_contract==0) {contract++; } cout<<"\n nomer_telefona(chislom):"; cin>>base[i].nomer_telefona; cout<<"\n strana:"; cin>>base[i].strana; cout<<"\n gorod:"; cin>>base[i].gorod; cout<<"\n ylica:"; cin>>base[i].ylica; cout<<"\n dom(chislom):"; cin>>base[i].dom; cout<<"\n nomer_kvartiry(chislom):"; cin>>base[i].nomer_kvartiry; for (j=0;j<kolvo_predmetov;j++) for (k=0;k<kolvo_predmetov;k++) { cout<<"\n vvedite ocenky studenta po predmety:"<<ocenki[j].nazvanie_predmeta<<":"; cin>>base[i].ball[k]; if ((base[i].ball[k]<0)||(base[i].ball[k]<0)>100) { cout<<"\n ocenka ot 0 do 100 !!!"; cin>>base[i].ball[k]; } j++; } } for (i=0;i<kolvo_student;i++) { base[i].srednyi_ball=sortirovka(base[i].ball,kolvo_predmetov); } METKA: cout<<"\n ---------------------------------------------------------------"; cout<<"\n vyberite punkt:"; cout<<"\n ---------------------------------------------------------------"; cout<<"\n 1:| sdelat sortirovky stydentov po yspevaimosty"; cout<<"\n 2:| vyvesti tablicy yspevaimosti stydenta po predmetam"; cout<<"\n 3:| vyvesti col-vo inogorodnyx studentov(spisok)"; cout<<"\n 4:| vyvesti col-vo gorodskih studentov(spisok)"; cout<<"\n 5:| vyvesti col-vo budzetnikow"; cout<<"\n 6:| vyvesti col-vo kontraktnikow"; cout<<"\n 7:| vyvesti spisok stydentov odnogo goda rozhdenya"; cout<<"\n 8:| naiti studenta v base i vyvesti vsy informaciy (1-6 pynkt)"; cout<<"\n ---------------------------------------------------------------"; cout<<"\n vvedite punkt:"; cin>>punkt; if (punkt==1) { one(base); } if (punkt==2) { two (student1,ocenki); } if (punkt==3) { three(base); } if (punkt==4) { four(base); } if (punkt==5) { five(base); } if (punkt==6) { six(base); } if (punkt==7) { seven(base); } if (punkt==8) { eight(student1,ocenki); }goto METKA; getch(); }
Страницы: 1, 2, 3, 4
|