C++ Primer(第四版) 课后习题6.8 统计空格制表符换行的数目
2015-01-20 19:45
260 查看
问题:
修改元音统计程序可使其统计读入的空格、制表符和换行的个数
代码:
总结:
(1)cin的>>输入操作符将空字符(空格、tab和回车)当作输入的结束,故使用cin.get(ch)方法,可获得空格、回车和tab等特殊字符。
(2)switch语句中的case标号必须是整型常量表达式,且每一个case语句都要使用break跳出循环。
(3)strstr()搜索一个字符串在另一个字符串中的第一次出现。找到所搜索的字符串,则该函数返回第一次匹配的字符串的地址;如果未找到所搜索的字符串,则返回NULL。
修改元音统计程序可使其统计读入的空格、制表符和换行的个数
代码:
#include <iostream> using namespace std; int main() { char ch; string str; int aCnt = 0, eCnt = 0, iCnt = 0, oCnt = 0, uCnt = 0, spaceCnt = 0; int brCnt = 0, tabCnt = 0; while (cin.get(ch)) { switch (ch) { case 'a':case 'A': aCnt++; break; case 'e':case 'E': eCnt++; break; case 'i':case 'I': iCnt++; break; case 'o':case 'O': oCnt++; break; case 'u':case 'U': uCnt++; break; case ' ': spaceCnt++; break; case '\n': brCnt++; break; case '\t': tabCnt++; break; default: break; } } cout<<aCnt<<" "<<eCnt<<" "<<iCnt<<" "<<oCnt<<" "<<uCnt<<endl; cout<<brCnt<<" "<<tabCnt<<" "<<spaceCnt<<endl; return 0; }
总结:
(1)cin的>>输入操作符将空字符(空格、tab和回车)当作输入的结束,故使用cin.get(ch)方法,可获得空格、回车和tab等特殊字符。
(2)switch语句中的case标号必须是整型常量表达式,且每一个case语句都要使用break跳出循环。
(3)strstr()搜索一个字符串在另一个字符串中的第一次出现。找到所搜索的字符串,则该函数返回第一次匹配的字符串的地址;如果未找到所搜索的字符串,则返回NULL。
相关文章推荐
- 统计字符行数空格换行制表符个数
- C++ Primer(第四版) 课后习题3.14 vector单词转大写
- C++ Primer(第四版) 课后习题7.12 指针形参和引用形参比较
- 编写一个程序,删除每个输入行末尾的换行符和制表符,并删除完全是空格或制表符的行<The C Programming Language>课后习题
- C++ Primer(第四版) 课后习题7.28 静态变量
- C++ Primer (第四版)课后习题9.26 删除容器元素
- C++ Primer(第四版) 课后习题4.30
- C++ Primer(第四版) 课后习题7.15 main函数传参
- C++ Primer 课后习题9.39 统计单词个数并记录最大单词和最短单词
- C++ Primer(第四版) 课后习题4.18
- C语言程序设计习题 1-8 编写一个统计空格,制表符与换行符个数的程序
- C++ Primer(第四版) 课后习题1.24
- C++ primer 第四版 课后习题5.18 的个人方法
- 《C++ Primer》第五版课后习题解答_第五章(4)(20-25)
- 习题 7.9 编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格、和其他字符的个数,在主函数中输入字符串以及输出上述的结果。
- 《c++ Primer(第四版)》习题 9.34
- C++ Primer第四版习题--4.28
- C语言打印统计单词长度的直方图<The C Programming Language>课后习题
- 笔记40--去除字符串中的空格、制表符、换行、回车
- 算法(第四版)课后习题(1.3.18~1.3.28)