题目描述
写出一个程序,接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。
输入描述:
输入一个有字母和数字以及空格组成的字符串,和一个字符。
输出描述:
输出输入字符串中含有该字符的个数。
示例1
输入
ABCDEF
A
输出
1
//解法1
#include<iostream>
#include<string>
using namespace std;
int calnum(string str,char c){
int res=0;
if(c>='A'&&c<='Z'){
for(int i=0;i<str.size();i++){
if(str[i]==c||str[i]==c+32) res++;
}
return res;
}
if(c>='a'&&c<='z'){
for(int i=0;i<str.size();i++){
if(str[i]==c||str[i]==c-32) res++;
}
return res;
}
for(int i=0;i<str.size();i++){
if(str[i]==c) res++;
}
return res;
}
int main(){
string str;
getline(cin,str);
char c;
cin>>c;
int result=calnum(str,c);
cout<<result<<endl;
return 0;
}
//解法2
int calnum(string str,char c){
int res=0;
char c2;
if(c>='A'&&c<='Z') c2=c+32;
if(c>='a'&&c<='z') c2=c-32;
for(int i=0;i<str.size();i++){
if(str[i]==c||str[i]==c2) res++;
}
return res;
}