【华为机试】计算字符个数

来源:互联网 发布:淘宝淘积木 编辑:程序博客网 时间:2024/06/05 12:46

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

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

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

输入  ABCDEF  A

输出  1

分析:题目思路比较清晰,对字符串中字符一一遍历,分大写字符、小写字符、其他字符3种情况考虑。

程序:

#include <iostream>#include <vector>#include <string>using namespace std;int charcount(string s1,char s2){int i=0,count=0;while(i<s1.size()){if(s2>='a'&&s2<='z') {  //当为小写字符时;if(s1[i]==s2||s1[i]-'A'==s2-'a')  count++;}else if(s2>='A'&&s2<='Z'){  //当为大写字符时;if(s1[i]==s2||s1[i]-'a'==s2-'A')  count++;}else  if(s2==s1[i]) count++;  //当为其他时;i++;}return count;}int main(){string s1;char s2; getline(cin,s1);cin>>s2;cout<<charcount(s1,s2);    return 0;}

原创粉丝点击