→ Для вступления в общество новичков и профессионалов программирования, пожалуйста нажмите здесь ...

Форум программистов: C++, Basic, Delphi, Pascal, JavaScript
Логин: Пароль:
Запомнить?  
@Mail.ru



Начать новую тему Ответить на тему  [ 1 сообщение ] 
СТЕК 
Автор Сообщение
Начинающий

Регистрация: 27.12.2008
Сообщения: 1

Репутация: 0 [ ? ]
Сообщение СТЕК
Поправьте пожалуйста что бы заработала. Проверить S на суффикс L:
#include <stdio.h>
#include <stdlib.h>
#define STACK struct stack

STACK
{
int info;
STACK *next;
};

void push(STACK **s, int item)
{
STACK *new_item;
new_item=(STACK*)malloc(sizeof(STACK));
new_item->info=item;
new_item->next=*s;
*s=new_item;
return;
};

int pop(STACK **s)
{
STACK *old_item;
int old_info=0;
if(*s)
{
old_info=old_item->info;
*s=(*s)->next;
free(old_item);
return old_info;
}
else
return 0;
};

int f_suff(STACK **S, STACK **L)
{
int ss, sl, flag=1;
while((ss=pop(&S))) /*!!!ВОТ ЗДЕСЬ ПОЛУЧАЕТ НОЛЬ!!! ПИШЕТ SUSP POINTER CONVERSION*/
{
sl=pop(&L); /*!!!И ЗДЕСЬ ТОЖЕ САМОЕ!!!*/
printf("%c\n%c\n", ss, sl);
if(ss!=sl)
{
flag=0;
break;
}
}
return flag;
}

main()
{
STACK *List=NULL, *Suff=NULL;
int c;
clrscr();
while ((c = getchar()) != '\n')
push(&List, c);
while ((c = getchar()) != '\n')
push(&Suff, c);
if(f_suff(&Suff, &List))
printf("S is suff of L");
else
printf("S isn't suff of L");
getch();
}


27.12.2008 19:15
Профиль
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 


Кто сейчас на конференции

Зарегистрированные пользователи: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
© 2013 «Форум программистов Украины»