Loading

计算机考研复试 计算字符个数

题目描述

写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。

输入描述:

输入一个有字母和数字以及空格组成的字符串,和一个字符。

输出描述:

输出输入字符串中含有该字符的个数。

示例1

输入

ABCDEF A

输出

1




//计算机考研程序设计 计算字符个数
/*
程序设计思想:
    注意用getline()读带有空格的字符串,又学到了一个 cin.ignore()、emmm...
*/
//程序实现:
#include<iostream>
#include<string>
using namespace std;

int main(){
    string s;
    while(getline(cin,s)){
        char c;
        cin>>c;
        int cnt=0;
        for(int i=0;i<s.size();++i){
            if(s[i]==c||s[i]+32==c||s[i]==c+32)    //有点坑,现在的测试用例区分大小写了,所以要改下
                cnt++;
        }
        cout<<cnt<<endl;
        /*输入字符后有回车符在缓存中意思是回车符也是输入的字符,也被放在缓存中。如果没有消除这个回车符,
        会导致getline读取下一个字符串的时候认为到空字符串,所以getline输出0*/
        cin.ignore();  //用来清除以回车结束的输入缓冲区的内容,消除上一次输入对下一次输入的影响
    }
    return 0;
}

 

posted @ 2018-12-06 22:50  Parzulpan  阅读(128)  评论(0编辑  收藏  举报