#include <iostream>
#include <cstdio>
#include <cmath>
#include <stack>
#include <string>

using namespace std;

int main()
{
char command[16];
char url[71];

stack<string> forwardStack;
stack<string> backStack;

string curUrl = "http://www.acm.org/";
backStack.push(curUrl);

while (true)
{
gets_s(command);

if (strcmp(command, "QUIT") == 0)
{
break;
}
else if (strcmp(command, "VISIT") == 0)
{
gets_s(url);
curUrl = url;
backStack.push(curUrl);

puts(curUrl.c_str());
puts("\n");
}
else if (strcmp(command, "BACK") == 0)
{
if (backStack.empty())
{
puts("Ignored\n");
}
else
{
forwardStack.push(curUrl);
backStack.pop();
if (!backStack.empty())
{
curUrl = backStack.top();
puts(curUrl.c_str());
puts("\n");
}
else
{
puts("Ignored\n");
}

}

}
else if (strcmp(command, "FORWARD") == 0)
{
if (forwardStack.empty())
{
puts("Ignored\n");
}
else
{
backStack.push(curUrl);
forwardStack.pop();
if (!forwardStack.empty())
{
curUrl = forwardStack.top();
puts(curUrl.c_str());
puts("\n");
}
else
{
puts("Ignored\n");
}

}

}

}

}

最新文章

  1. 106运用SWITCH语句打印星期几的单词
  2. 编译Android源码
  3. 浅谈-js递归函数
  4. 【SQL Server】系统学习之三:逻辑查询处理阶段-六段式
  5. js获取url参数值的两种方式
  6. arcgis 绝对、相对、UNC 和 URL
  7. Android出现Read-only file system 解决方法
  8. Multiple methods named &#39;status&#39; found with mismatched result, parameter type or attributes
  9. Fedora安装VirtualBox时出现错误Kernel driver not installed (rc=-1908)的解决办法
  10. CentOS配置上网
  11. JavaScrip:Function函数编程
  12. Docker + webpack 打包前端项目
  13. mysql(3)—— 内连接、外连接的区别
  14. 软工网络15个人作业4——alpha阶段个人总结
  15. 24. Swap Nodes in Pairs 链表每2个点翻转一次
  16. vue原理探索--响应式系统
  17. mysql安装与卸载(绿色版)
  18. JAVA中对List&lt;Map&lt;String,Object&gt;&gt;中的中文汉字进行排序
  19. 1.4 Crack小实验
  20. react新的生命周期

热门文章

  1. poi读写word模板 / java生成word文档
  2. Windows Server 2012 FTP配置 后客户机一直登录不上
  3. 关于 swift 的图片多选问题
  4. 第五次实验报告 java 网络编程
  5. 【液晶模块系列基础视频】5.2.X-GUI字体驱动2
  6. CSS3 3D Transform
  7. [转]在VS2010 VC++项目中引用Lib静态库(以Openssl为例)
  8. 《Java核心技术卷二》笔记(一)流与文件
  9. Javascript 笔记与总结(2-18)正则验证与正则匹配
  10. Linux 每天自动备份mysql数据库的方法