0

我有一个问题要解决:

编写一个 LC-3 汇编语言程序,要求用户输入一个字符串(输入字符串的结尾是回车键),并以相反的顺序打印该字符串的单词。例如,如果输入字符串是“Hello, my name is Joe”,您的程序的输出应该是“Joe is name my Hello”,用 LC-3 模拟器测试您的程序。您的代码必须有据可查。提示:考虑使用堆栈更容易实现。

我知道如何使用堆栈来返回完全相反的内容:输入“AB CD EF”输出“FE DC BA”但我如何才能只反转段的顺序?例如:输入“AB CD EF”输出“EF CD AB”

谢谢

4

1 回答 1

0

最好的办法是增加一次压入堆栈的内存块的数量。例如,如果您只希望用户输入等于或小于 5 个字符的单词,那么对堆栈的一次“推送”将占用 5 个内存块。

这样您就可以从堆栈中“弹出”单词,而无需重新排列每个字母的顺序。

于 2015-05-01T03:01:33.537 回答