Написать программу замены одного стека на другой - C (СИ)
Формулировка задачи:
Задание: написать программу замены одного стека на другой.
Помогите, пожалуйста
Решение задачи: «Написать программу замены одного стека на другой»
textual
Листинг программы
typedef int Item; static Item *s; static int N; void STACKinit(int maxN) { s = (Item*) malloc(maxN*sizeof(Item)); N = 0; } int STACKempty() { return N == 0; } void STACKpush(Item item) { s[N++] = item; } Item STACKpop() { return s[--N]; }
Объяснение кода листинга программы
Вот что делает каждый из этих функций:
STACKinit
- инициализирует стек. Он выделяет память для массиваs
размеромmaxN
и устанавливаетN
в 0.STACKempty
- проверяет, пуст ли стек. ЕслиN
равно 0, то возвращаетtrue
, в противном случаеfalse
.STACKpush
- добавляет элемент в стек. Он сохраняет элемент в массивеs
по адресуN
и увеличиваетN
на 1.STACKpop
- удаляет и возвращает последний добавленный элемент из стека. Он уменьшаетN
на 1 и возвращает элемент в массивеs
по адресуN
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д