c++编程:说反话(1009-PAT乙级)
1009说反话cin 读取字符串时不能读取空格string s; cin s; // 输入 hello world cout s; // 输出 hello空格后面的被丢弃如何读取带空格的整行getline()string s; getline(cin, s); // 读取整行包括空格 cout s; // 输出 hello world#includebits/stdc.h using namespace std; int main() { stackstring s; // 创建一个字符串类型的栈 s用于存储输入的单词 string n, i; // 定义两个字符串变量n 用于接收输入i 用于临时存储栈顶元素 // 循环读取不断从标准输入读取字符串直到文件结束EOF // cin n 会返回 cin 对象当读取失败如遇到 EOF时条件为 false while(cin n) { // 每次读取一个单词以空格或换行分隔 s.push(n); // 将读取到的单词 n 压入栈顶 } // 循环结束后栈中顺序从底到顶与输入顺序相反 // 第一个输入的单词在栈底最后一个输入的单词在栈顶 i s.top(); // 获取栈顶元素最后输入的单词赋值给 i cout i; // 输出第一个单词栈顶元素不加空格 s.pop(); // 弹出已输出的栈顶元素 // 循环输出剩余元素从栈顶到栈底 while(!s.empty()) { // 当栈不为空时继续循环 cout s.top(); // 先输出一个空格再输出栈顶元素 s.pop(); // 弹出已输出的栈顶元素 } // 循环结束后所有单词已按输入顺序的逆序输出 return 0; }
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2480687.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!