Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Создание базы данных на Си

16K
03 мая 2006 года
Farior
19 / / 01.05.2006
[COLOR=red]
Помогите кто-нибудь пожалуйста с созданием базы данных на Си под такую задачу:

База данных деканата содержит информацию о студентах: номер зачетной книжки, ФИО студента (строки 20 символов), группа (строка 5 символов), курс (целое число), средний балл за прошлый семестр (целое число), средний балл за все семестры (целое число). Все баллы – по 10-и бальной системе.
Если можно пришлите помощь на ящик [email]Farior@yandex.ru[/email]
Заранее спасибо
  • есть ли у кого нибудь исходник данной программы от dimon_9922, 25 декабря 2013 года
Страницы:
16K
26 мая 2006 года
Farior
19 / / 01.05.2006
А списки и структуры это что разные вещи ?
Как задавать вид японял а вот как их накапливать эти списки (или структуры если это одно и тоже)
242
26 мая 2006 года
Оlga
2.2K / / 04.02.2006
Цитата:
Originally posted by Farior
А списки и структуры это что разные вещи ?


Дейтел

Цитата:

списки - это линейный набор ссылаюихся на себя структур, называемых узлами, и объединненых указателем/и-связкой



книгу заставил в руки взять :).


Цитата:
Originally posted by Farior
Как задавать вид я понял а вот как их накапливать эти списки (или структуры если это одно и тоже)


как их накапливать надо бы понять с того примера что я написала
будет время (думаю не раньше чем через 2-3 дня) постараюсь описать все подробно
но попоему легче нормальную книгу в руки взять

242
26 мая 2006 года
Оlga
2.2K / / 04.02.2006
может это поможет

Цитата:
Originally posted by _nоrth_
Хорошая книга: http://shop.piter.com/book_about.phtml?id=978546901495&refer=1

в ней описывается реализация двухсвязных списков.

Код можно скачать с http://www.diasoft.kiev.ua/cgi/webshop.cgi?config=/home/www/htdocs/diasoft/cgi/config.txt&uid=Us8WngAA1102333991&command=link--ds_materials_set (TDLnkList.pas)



в поиске по форуму был?
поищи, трудно поверить что нет примеров

16K
28 мая 2006 года
Farior
19 / / 01.05.2006
Как понять :
Cur->next->prev=tmp
если Cur - указатель на структурe (курсор)
next - следующий элемент.
prev - предыдущий.
tmp - указатель на структурe

получается установить tmp на место Cur


if (Getrec(flag,Cur)> Getrec(flag,Cur->next))


{tmp=Cur;
if(Cur->next) {Cur=Cur->next;


if(Cur->next) tmp->next=Cur->next; else tmp->next=NULL;
if(Cur->next) Cur->next->prev=tmp;
if(tmp->prev) tmp->prev->next=Cur;
if(tmp->prev) Cur->prev=tmp->prev; else Cur->prev=NULL;
Cur->next=tmp;
tmp->prev=Cur;
if(tmp==Head) Head=Cur;
}numb=1;[COLOR=orangered]
242
29 мая 2006 года
Оlga
2.2K / / 04.02.2006
Цитата:
Originally posted by Farior
Как понять :
 
Код:
Cur->next->prev=tmp
если Cur - указатель на структурe (курсор)
next - следующий элемент.
prev - предыдущий.
tmp - указатель на структурe


получается установить tmp на место Cur


ты прав, именно так и получается
видно речь идет о том, что бы вставить между
двумя существующими узлами новый/другой узел
делается это изменением значений ячеек prev в нижнем узле
и next в верхнем узле
а temp - указатель на добавляюмую( или речь может идти о сортировке) структуру

242
29 мая 2006 года
Оlga
2.2K / / 04.02.2006
в этом отрывке кода меняют местами 2-а узла
что бы тебе было понятней стоит дома попробавать
нарисовать схему обмена и запостить сюда, проверим

нам надо поменять местами узлы Cur и Cur->next.
т.к. речь идет о списках, также мы должны поменять адресса(значения
указателей) узла который находится до кур(тмп->прев->нехт)
исключение: кур первый элемент списка
и кур->прев == NULL
,
и узла который находится после кур->нехт(кур->нехт->next)
исключение: кур->next последний элемент списка ==NULL
ну и естественно значения обеих ячеек кур и нехт узлов которые мы меняем местами
Код:
/*если условие сортировки выполняется, тогда меняем местами узлы*/
if (Getrec(flag,Cur) > Getrec(flag,Cur->next))
{
    tmp=Cur;/*tmp принимает адрес узла на который указывает указател Cur |=> tmp указывает на ту же структуру*/
    if(Cur->next) /*проверяем что в структуре на которую указывает кур ячейка нехт не равна НУЛЛ - т.е. есть еще структура после Кур*/
    {
       Cur=Cur->next;/*Кур принимает адрес следующей структуры*/
/*тмп смотрит на первую структуру(рассположенную раньше в списке)
кур смотрит на вторую структуру
и эти 2-е структуры надо поменять местами
*/
      /*эта проверка в принцепе лишняя: mozno prosto napisat' :  tmp->next=Cur->next;
речь идет о том что первая структура(тмп->нехт)
принимает адрес узла на который указывает 2-ая структура(Кур->нехт)
или NULL если 2-ая структура последняя в списке*/
       if(Cur->next)  tmp->next=Cur->next;  
       else tmp->next=NULL;

       if(Cur->next)    Cur->next->prev=tmp;/*если Кур не последний узел в списке,
тогда ячейка прев узла после него(Кур->нехт)
принимает адрес узла tmp*/

       if(tmp->prev)    tmp->prev->next=Cur;;/*если tmp не первый узел в списке,
тогда ячейка next узла до него(tmp->prev)
принимает адрес узла Cur*/
     

       /*эта проверка в принцепе toze лишняя: mozno prosto napisat' :  Cur->prev=tmp->prev;
речь идет о том что, esli структура na kotoruyu ukazyvaet tmp ona ne pervaya v spiske, togda yacheika prev struktury na kotoruyu ukazyvaet Cur, принимает адрес узла на который указывает yacheika(peremennaya) prev 1-oi структура tmp или NULL если 1-ая структура(tmp) pervaya в списке*/

       if(tmp->prev) Cur->prev=tmp->prev;  
       else Cur->prev=NULL;

/*yacheika next struktury na kotoruyu ukazyvaet Cur
prinimaet adres struktury na kotoruyu ukazyvaet tmp*/  
       Cur->next=tmp;
/*peremennaya prev struktury na kotoruyu ukazyvaet tmp prinimaet adres struktury
na kotoruyu ukazyvaet Cur*/
       tmp->prev=Cur;
/*esli tmp ukazyval na pervuyu strukturu v spiske, togda ukazatel' head(on soderzit adres nachala spiska - pervoi struktury v spiske) prinimaet
adres uzla na kotoruj ukazyvaet Cur*/
       if(tmp==Head) Head=Cur;
}
numb=1;/*k chemu eto ne ponimayu :)*/


esli u tebya est[ polnaya rabotayush'aya programma sbros' syuda pliz, chto by byl primer
16K
29 мая 2006 года
Farior
19 / / 01.05.2006
вот полностью моя прога (мне ее сделали) вот я и разбираюсь как она работает и сам хочу дойти...
88K
25 декабря 2013 года
dimon_9922
1 / / 25.12.2013
есть ли у кого нибудь исходник данной программы
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог