Организовать просмотр, удаление элементов структуры в виде списка: Сведения об экзамене содержат следующие данные: дисциплину (программирование, социология, иностранный язык, физика), дату сдачи экзамена (год, месяц, день), сведения о студенте (фамилия, факультет, курс, группа) и экзаменационную оценку. Задан набор сведений об экзаменах, сданных студентами за последние несколько лет; в них факультет и предмет кодируются первыми буквами названия. Определить количество отличников по программированию на технологическом факультете среди студентов первого курса, сдававших экзамены летом 1995 года, вывести на экран их фамилии и группу. Добавлено спустя 6 минут 14 секунд: Вот текст который я написал: #include "stdafx.h" #include "stdio.h" #include "conio.h" struct predmet{ int p; int s; int r; int e; }; struct date { int year; int month; int day; }; struct info_st { char familia[10]; int course; int group; struct predmet pr; struct date dt; info_st*q; }; void main() { int i,n,k; info_st *head=new info_st; info_st *pointer=head; info_st *previous; printf ("Vvedite kolichestvo studentov: "); scanf ("%i",&n); for (i=0;i pointer->q=new info_st; printf ("Familia: "); scanf ("%s",&pointer-> familia); printf ("Kyrs: "); scanf ("%i",&pointer-> course); printf ("Gryppa: "); scanf ("%i",&pointer-> group); printf ("Ocenka po programirovaniu: "); scanf ("%i",&pointer->pr.p); printf ("Ocenka po fizike: "); scanf ("%i",&pointer->pr.s); printf ("Ocenka po inostrannomy: "); scanf ("%i",&pointer->pr.r); printf ("Ocenka po socialogii: "); scanf ("%i",&pointer->pr.e); printf ("vvedite god sdachi ekcamena: "); scanf ("%i",&pointer->dt.year); printf ("vvedite meyacyac sdachi ekcamena "); scanf ("%i",&pointer->dt.month); printf ("vvedite den sdachi ekcamena "); scanf ("%i",&pointer->dt.day); printf ("______________________________________\n"); pointer=pointer->q; } printf ("______________________________________\n\n"); pointer->q=NULL; pointer=head; printf (" Spisok stydentov:\n\n"); while (pointer->q!=NULL){ printf ("Familia: %s\n",pointer->familia); printf ("Date: %i.%i.%i\n",pointer->dt.day,pointer->dt.month,pointer->dt.year); printf ("Ocenki: %i,%i,%i,%i\n",pointer->pr.p,pointer->pr.s,pointer->pr.r,pointer->pr.e); printf ("Kyrs: %i\n",pointer->course); printf ("Gryppa: %i\n",pointer->group); printf ("______________________________________\n"); pointer=pointer->q; } printf ("______________________________________\n\n"); pointer->q=NULL; pointer=head; while (pointer->q!=NULL){ if ((pointer->course!=1)&&(pointer->pr.p!=5)&&(pointer->dt.year!=1995)&&((pointer->dt.month!=6)||( pointer->dt.month!=7)||( pointer->dt.month!=8)) &&(pointer==head)) {head = pointer->q; pointer=pointer->q; } if ((pointer->course==1)&&(pointer->pr.p==5)&&(pointer->dt.year==1995)&&((pointer->dt.month==6)||( pointer->dt.month==7)||( pointer->dt.month==8))) {pointer=pointer->q; previous = pointer;} else { previous->q=pointer->q; delete pointer; } pointer = pointer->q; } pointer->q=NULL; pointer=head; printf ("Polychenniy spisok:\n\n"); while (pointer->q!=NULL){ printf ("Familia: %s\n",pointer->familia); printf ("Gryppa: %i\n",pointer->group); printf ("______________________________________\n\n"); pointer = pointer->q; } getch(); } В конце структура должна пройти условие, и если указатель на данные не проходит условие, то он удаляется, в противном переходит на следующий указатель. И в конце должен выводится список с данными. которые прошли условие. Но увы, нифига не выводится! Мне кажется проблема в указателях!!! Помогите плиззззз)))