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

Форум программистов: 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 сообщение ] 


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

Зарегистрированные пользователи: нет зарегистрированных пользователей


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

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