![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 12.05.2011
Сообщений: 10
|
![]()
пожалуйста помогите а то до сесии нужно поздавать много лаб а я на этой застрял и не в какую уже мозги не то что перегрелись а выкипели походу(
УЧЕТ СТУДЕНТОВ УЧАСТВУЮЩИХ В ОЛИМПИАДАХ Атрибуты: 1. Профиль олимпиад (информатика, математика и т.д.) 2. Название олимпиады 3. Дата проведения 4. Место проведения 5. Фамилии участников Основные функции: • Удалить все записи по олимпиадам, проведенным в заданную дату • Заменить место проведения для заданной олимпиады • Вывести все сведения об олимпиадах проведенных в заданном месте вот я сам пытался сделать из похожей задачи свою но чтото без успешно, как сделать так чтобы несколько фамилий вводилось и вывсести сведения об олимпиадах проведенных в заданном месте? #include <stdio.h> #include <string.h> main() { typedef struct regi { char fam[70]; char Profil[40]; char Nazvanie[10]; char Data[11]; char Mesto[20]; }; struct history { int nomer; struct regi Reg; } His[10]; int i,j,k,m,n,osn_f,kol_osm,z; char data[11]; m = 0; k = 0; z=0; while( k < 6) { printf(" \n Vuberite punkt menu \n"); printf("-------------------------------------------------------\n"); printf(" 1 - Dobavit` zapis`(zaregistrirovat` rofil` olimpiadu) \n"); printf(" 2 - Vuvod na ekran vseh zapisei \n"); printf(" 3 - Ydalit` zapis` \n"); printf(" 4 - Osnovnue funkcii \n"); printf(" drugoe chislo - Vuhod \n\n"); printf(" Vvod:"); scanf("%d",&k); switch (k) { case 1: His[m].nomer = m+1; printf (" VVedite informaciu %d -oi olimpiadu: \n Profil` olimpiadu: ",His[m].nomer); scanf("%s",His[m].Reg.Profil); printf (" Nazvanie olimpiadu: "); scanf("%s",His[m].Reg.Nazvanie); printf (" Data providenia: "); scanf("%s",His[m].Reg.Data); printf (" Mesto providenia: "); scanf("%s",His[m].Reg.Mesto); printf (" Familia: "); scanf("%s",His[m].Reg.fam); m++; break; case 2: printf(" \n Baza dannuch olimpiad\n"); for ( i = 0; i < m; i++) { printf(" %d. Profil` olimpiadu: %s \n",His[i].nomer,His[i].Reg.Profil); printf("-------------------------------------------------------------------------------\n"); printf(" Nazvanie olimpiadu: %s,Data providenia: %s\n",His[i].Reg.Nazvanie,His[i].Reg.Data); printf(" Mesto providenia: %s Familia: %s \n",His[i].Reg.Mesto,His[i].Reg.fam); } fflush(stdin); getchar(); break; case 3: printf (" Vvedite nomer olimpiadu dlia ydalenia:"); scanf("%d",&n); if( n-1 < m ) { i = n-1; while (i < m) { His[i].Reg = His[i+1].Reg; His[i].nomer = i+1; i++; } m--; } else puts(" Nomer otsytstvyet"); break; |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 12.05.2011
Сообщений: 10
|
![]()
case 4: /* Основные функции */
printf(" \n Выберите основную функцию для работы \n"); printf("-----------------------------------------\n"); printf(" 1 - ydalit` vse zapisi po olimpiadam, proveaennum v zadannuy datu \n"); printf(" 2 - Zamenit` mesto provedenia olimpiadu \n"); printf(" 3 - Vuvesti vse svedenia ob olimpiadach provedennuch v zadannom meste \n"); printf(" drugoe chislo - Vuhod \n\n"); printf(" Vvod:"); scanf("%d",&osn_f); switch(osn_f) { case 1: printf(" Vvedite daty dlia ydalenia provedennuch olimpiad: "); scanf("%s",data); for ( i = 0; i < m; i++) { if ( strcmp(data,His[i].Reg.Data) == 0 ) { His[i].Reg = His[i+1].Reg; /* удаляем запись со сдвигом */ His[i].nomer = i+1; /* номер записи */ m--; /* уменьшим число записей */ } } break; case 2: printf (" Vvedite nomer olimpiadu dlia zamenu: "); scanf("%d",&n); if( n-1 < m ) { printf (" %s ---> Mesto providenia: %s\n",His[n-1].Reg.Profil,His[n-1].Reg.Mesto); printf (" Novoe mesto providenia: "); scanf("%s",His[n-1].Reg.Mesto); } else puts(" Номер отсутствует"); break; case 3: printf(" Vvedite mesto provedenia olimpiadu: "); scanf("%s",His[m].Reg.Mesto); printf(" \n olimpiadu prochedchie v %s\n",His[m].Reg.Mesto); printf("---------------------------------------|\n\n"); for ( i = 0; i < m; i++) { printf(" Profil`: %s, Nazvanie: %s, Data providenia: %s,\n",His[i].Reg.Profil,His[i].Reg.Nazvanie,His[i].Reg.Data); printf("-------------------------------------------------------------------------------\n"); printf(" %d. %s %s %s \n",His[i].nomer,His[i].Reg.Profil,His[i].Reg.fam); } fflush(stdin); getchar(); break; default: break; } break; default: break; } } return(0); } |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
нужно исправить программу в с++ | tymac9n | Помощь студентам | 1 | 12.05.2011 00:13 |
нужно исправить код | melkaya9112 | Помощь студентам | 1 | 09.12.2010 00:56 |
нужно исправить программу) | ilnar21 | Помощь студентам | 1 | 30.10.2010 22:42 |
Очень нужно исправить программу в Delphi !!! | Grifon_666 | Помощь студентам | 0 | 12.05.2010 21:42 |
Помогите исправить программу нужно очень срочно! | Алена | Помощь студентам | 3 | 04.11.2007 18:28 |