找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 1815|回复: 5

关于将字符串反序输出的问题

[复制链接]
发表于 2009-11-2 03:32:36 | 显示全部楼层 |阅读模式 IP:江苏扬州
小弟正在学习STL
请问大家:
以下程序何处有问题:
//text_reverse.cpp
//要实现将输入的一行字符反序输出(利用stack实现)
#include <iostream>
#include <stack>
using namespace std;
void main()
{ char item=' ';
stack<char>text;
cout<<"Type in a line of text with a <Enter>."<<endl
<<"The text will be printed in reverse order."<<endl;
do
{ cin>>item;
text.push(item);
}while(item=='\n');
cout<<endl<<endl;
while(!text.empty())
{ cout<<text.top();
text.pop();
}
cout<<endl;
}
此程序在VC++6.0 + WinXP环境下编译通过,但未实现目的(只输出了输入的第一个字符)
请问大家怎么修改以实现题目目的
谢谢大家了先!!!
问了些人说好象是"cin>>item"有问题,我也意识到了,但是应该怎么改呢,能说得具体点吗
(本人在线等……)
发表于 2009-11-2 03:32:42 | 显示全部楼层 IP:江苏扬州
如果用cin的话,好象每次要回车后才是输入,也就是说要,输入一个字符,回车,再输入下一个……
一次全输入,所以只有一个输出。
回复

使用道具 举报

发表于 2009-11-2 03:32:47 | 显示全部楼层 IP:江苏扬州
#include <iostream>
#include <stack>
using namespace std;
void main(){
char item;
stack<char>text;
cout<<"Type in a line of text with a <Enter>."<<endl
<<"The text will be printed in reverse order."<<endl;
while(cin>>item)
text.push(item);
cout<<endl<<endl;
while(!text.empty()){
text.pop();
cout<<text.top();
}
cout<<endl;
}
回复

使用道具 举报

发表于 2009-11-2 03:32:52 | 显示全部楼层 IP:江苏扬州
按三楼说的不行啊?
三楼的没判断什么时候输入结束啊!
回复

使用道具 举报

发表于 2009-11-2 03:32:57 | 显示全部楼层 IP:江苏扬州
谢谢咯
问题解决拉!
原来不能用cin,要用cin.get()
还有我把do while和while弄错了
回复

使用道具 举报

发表于 2009-11-2 13:05:03 | 显示全部楼层 IP:武汉大学
那个贴子 让它沉下去吧! 不要啦
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-30 03:36 , Processed in 0.116118 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表