编写程序实现从终端接收用户输入的数据,并存入用户数据区。输入#表示上一字符无效,输入@表示当前输入行整行无效。

/*

* line editor by using stack.

*

* fduan, Dec. 31, 2011.

*/

void line_editor()

{

using std::stack;

stack ss;

std::string line;

int c;

while( ( c = getchar() ) != EOF )

{

line = "";

while( c != '\n' )

{

switch( c )

{

case '#':

if( ! ss.empty() )

ss.pop();

break;

case '@':

while( ! ss.empty() )

ss.pop();

break;

default:

ss.push( c );

break;

}

c = getchar();

}

while( ! ss.empty() )

{

c = ss.top();

ss.pop();

line.insert( line.begin(), c );

}

printf( "%s\n", line.c_str() );

}

}

栈的应用行编辑数据结构c语言,数据结构题典022:栈的应用——行编辑程序(C语言版)...相关推荐

  1. 二级c语言上机题库及解析,2013年计算机二级C语言上机题库及答案解析(3)

    填空题 给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息.ss所指字符串数组中共有N个字符串,且串长小于M.程序中 ...

  2. 2007年9月c语言真题及答案,2007年9月二级C语言笔试真题和答案(已再修改).doc

    2007年9月二级C语言笔试真题和答案(已再修改) 2007年9月二级C语言笔试真题及答案 (考试时间:120分钟,满分100分) 一.选择题((1)-(10)每题2分,(11)-(50)每题1分.共 ...

  3. 2011年9月计算机C语言真题,2011年9月全国计算机二级C语言考试真题及答案.doc

    2011年9月全国计算机二级C语言考试真题及答案 2011年9月全国计算机等级考试二级笔试试卷 ?C语言程序设计 ?(考试时间90分钟,满分100分) 一.选择题((1)-(10).(21)-(40) ...

  4. c/c++语言程序设计题库,CD2_计算机实践《C/C++语言程序设计》_题目列表.doc

    CD2_计算机实践<C/C语言程序设计>_题目列表 C语言程序设计计算机实践题目 [2011.6修订] A类-简单题 [最高分80,良好]1 B类-中等难度题 [最高分90,优秀]4 C类 ...

  5. c语言程序题在哪儿搜,国家二级计算机考试c语言题库

    在计算机国家二级的C语言考试中,有哪些题目类型呢?下面是小编给大家整理的二级计算机考试c语言选择题及答案,供大家参阅! 二级计算机考试c语言选择题 1.以下程序的输出结果是*** ***. main* ...

  6. 二级c语言程序题常考知识点,计算机等级考试二级C语言常见知识点总结

    记忆力对于人生的生活是非常重要的,如果一个人老是遗忘事情,对他的生活与工作会出现很大的影响.下面学习啦小编就为大家介绍一下关于计算机等级考试二级c语言的常见知识点,欢迎大家参考和学习. 1)程序结构是 ...

  7. c语言编程题笔试 博客,【笔试题】C语言:模拟实现strncmp

    [函数原型]int strncmp ( const char * str1, const char * str2, size_t num ); [返回值] 若str1与str2的前n个字符相同,则返回 ...

  8. 石油大c语言答案,中国石油大学C语言上机题答案(2013版)答案 最全最详细

    由2012级学霸学长期末复习整理,包含所有2012级c语言上机题题目级及答案.比网上的2012版更新!!! 中国石油大学c语言上机题答案大全(2013版) 最全最详细 1.1 Hello world. ...

  9. c语言编程判断谁说谎,c语言训练题:关于张三李四王五说谎的问题(此处用javascript实现)...

    (第一篇博文) 今天在一个交流群里见他们无聊,然后找到之前收藏的一些c语言题目放出去想让他们做,结果反倒是自己不会做,于是花了很多时间去想. 原题:张三说李四在说谎,李四说王五在说谎,王五说张三和李四 ...

最新文章

  1. C# Linq 查询数据库(DataSet)生成 Tree
  2. 从微信红包的春节活动运营方案中,必读的运营策略
  3. Nginx Mac笔记
  4. C++学习之路 | PTA乙级—— 1063 计算谱半径 (20 分)(精简)
  5. 大数据Hadoop最新版实战Linux Ubuntu 16.04安装与运行测试例子...
  6. 子网掩码换算 - 在线工具
  7. 将数字转为ASCII码
  8. 青青草php,青青草原博客
  9. Inside-out追踪技术浅析
  10. kappa一致性检验教程_Kappa一致性分析
  11. python压缩解压缩_Python实现压缩和解压缩ZIP文件的方法分析
  12. 企业使用Windows Sysprep工具来封装Win10、Win11操作系统(最新最全)
  13. mac上安装vbox虚拟机运行win7系统,mac上运行exe
  14. 【python】7-10 将输入的字符串中的字符头尾间隔输出(PTA)
  15. 公众号文章的动态图片如何制作
  16. JVM虚拟机概述(2)
  17. 蓝桥杯 算法训练 关联矩阵Python实现
  18. 频谱分析系列:1dB增益压缩点概述及测试
  19. 算法的有穷性和可行性的区别
  20. 模具的发展--中英文翻译

热门文章

  1. 电池革新技术遥不可及 未来着眼于纳米材料
  2. SQuirreL SQL Client的安装
  3. tta部署_TTA、丰源轮胎云平台项目战略合作交接仪式
  4. 输出2000-3000年之间的闰年
  5. cefsharp 刷新_Excel 源数据经过[power query][power povit]处理后通过透视表展现,刷新数据的速度很慢-Excel基础应用-ExcelHome技术论坛...
  6. 如何在Windows10系统中修改.jar文件的默认应用
  7. 组合电路中的静态冒险与动态冒险
  8. arm+fpga架构优势,米尔MYC-JX8MMA7新品发布!
  9. [sdm660 android9.0]GPIO的使用配置方法
  10. 七月在线深度学习错题刷