C++学习札记20140315

来源:互联网 发布:最新微信家校通源码 编辑:程序博客网 时间:2024/06/05 15:38

switch语句首先对括号里面的表达式求职,该表达式可以是一个初始化的变量声明,表达式的值转换成整数类型,然后与case标签比较

case标签必须是整型常量表达式,任何两个case标签的值不能相同,否则出错

break语句的作用是中断当前的控制流

#include <iostream>using namespace std;int main(){unsigned int scnt=0, hcnt = 0, acnt = 0, ocnt = 0;char ch;while(cin.get(ch))//cin.get(ch)可以捕获空格字符,cin >> ch 不能捕获空格和换行等字符{switch (ch){case ' ':++scnt;break;case '\n':++hcnt;break;case 'a':++acnt;break;default:++ocnt;break;}}cout << "space number: " << scnt << '\n' << "newline number: " << hcnt << '\n' << "alpha a number: " << acnt << '\n' << "other number: " << ocnt << '\n';return 0;}
//统计一下含有两个字符的字符序列的数量 ff fl fi#include <iostream>using namespace std;int main(){unsigned int ffCnt=0, flCnt = 0, fiCnt = 0, oCnt = 0;char currCh = '\0', preCh = '\0';while(cin >> currCh)//cin.get(ch)可以捕获空格字符,cin >> ch 不能捕获空格和换行等字符{if(preCh == 'f'){switch (currCh){case 'f':++ffCnt;break;case 'l':++flCnt;break;case 'i':++fiCnt;break;default:++oCnt;break;}}preCh = currCh;//想法很重要}cout << "ff number: " << ffCnt << '\n' << "fl number: " << flCnt << '\n' << "fi number: " << fiCnt << '\n' << "oCnt number: " << oCnt << '\n';return 0;}



0 0