Существуют «стеки» (общие структуры данных, буферы FILO), а для языка ассемблера есть «стек» (тот, который поддерживается для отслеживания вызовов и возвратов, часто с помощью ЦП в форме PUSH / POP инструкции и специальный регистр «указатель стека»).
Вы можете решить эту проблему, используя только «стек». В частности, у вас будет рекурсивная функция, которая ищет начало следующего слова, затем (если найдено следующее слово) вызывает себя с указателем на остаток строки (начиная со следующего слова), а затем печатает только первое слово .
Мне необходимо использовать стеки
Это формулировка, которую использовал ваш профессор / инструктор? Если они сказали «стеки» (множественное число, что означает более одного стека), то это не имеет смысла. Если они сказали «вам нужно использовать стек», то смотрите мои комментарии выше.
Если они сказали «вам необходимо реализовать собственную структуру данных стека и использовать ее», то она становится похожей, но замена рекурсии на циклы и явные нажатия / всплывающие окна. В частности, "пока конец строки не достигнут {найти начало следующего слова; pu sh начало и длина первого слова};" а затем "пока стек не пустой {всплывающее начало и длина слова; выведите слово;}").