Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2010, 23:57   #1
zhenya.ya
Форумчанин
 
Регистрация: 29.11.2009
Сообщений: 142
Сообщение вывод в списках

проблема: не отображются введенные данные (внутренние). Что у меня с выводом не правильно?


Код:
struct list{
        char aa[22];
        list *next;
        struct list2 *p2,*cur2,*prev2,*top2;
}*p,*top,*prev,*cur;
struct list2{
        char xx[22];
        list2 *next;
};
 
void push()
{
        top=0;
        int n,i,k=0;
        printf("\n size:\n");
        scanf("%i",&n);
        printf("\n Input:\n");
        for(;n;n--)
        {
                p=new list;
                scanf("%s",&p->aa);
                p->next=NULL;
                while(cur && p->aa >cur->aa)
                {
                        prev=cur;
                        cur=cur->next;
                }
                if(prev==NULL)
                {
                        p->next=top;
                        top=p;
                }
                else
                {
                        p->next=cur;
                        prev->next=p;
                }
        }
        p=top;
        while(p)
        {
                p->p2=p->top2;
                printf("%s",p->aa);
                printf("\n size (inside):\n");
                scanf("%i",&i);
                printf("\n input: ( push into inside\n");
                for(;i;i--)
                {
                        p->p2=new list2;
                        scanf("%s",&p->p2->xx);
                        if(!k){
                                p->top2=NULL;
                                k++;
                        }
                        p->p2->next=NULL;
                        while(p->cur2 && p->p2->xx > p->cur2->xx)
                        {
                                p->prev2=p->cur2;
                                p->cur2=p->cur2->next;
                        }
                        if(p->prev2==NULL)
                        {
                                p->p2->next=p->top2;
                                p->top2=p->p2;
                        }
                        else
                        {
                                p->p2->next=p->cur2;
                                p->prev2=new list2;
                                p->prev2->next=p->p2;
                        }
                }
                k=0;
                p=p->next;
        }
}
void show()
{
        p=top;
        if(p==NULL) printf("\n list is empty\n");
        while(p)
        {
                printf(" %s",p->aa);
                p->p2=p->top2;
                while(p->p2)
                {
                        printf("%s",p->p2->xx);
                        p->p2=p->p2->next;
                }
                p=p->next;
        }
}
void main()
{
        push();
        show();
        system("PAUSE");
}
zhenya.ya вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Еще раз о списках tae1980 Microsoft Office Excel 12 02.09.2013 11:44
Еще раз о списках tae1980 Microsoft Office Excel 2 23.05.2009 16:51
набор списках в пользовательской форме, adonis Microsoft Office Excel 4 09.04.2009 14:03
комплексные числа в списках на pascal world12_tk Помощь студентам 1 27.03.2009 16:35
Инфо о списках Mango Помощь студентам 1 13.01.2009 14:37