我们给了一个任意长度的字符串,其中包含大写和小写字母,并且任务是计算与英文字母位置相同的那些字符的计数。
Input − String str = eBGDOutput − Count is: 2
解释-B和D是英文字母顺序相同的字符,因为B排在第二位,D排在第四位。
Input − String str = AbcdeizxyOutput − Count is: 5
解释-A,B,C,D和E是相同的英文字母顺序,因为A排在第一位,然后是B,C,D和E。
输入由大写和小写字母组成的字符串。
从0到可以使用该size()函数计算的字符串大小开始循环。
现在检查是否'i = str [i]-'a'或i = str [i]-'a'',因为我们的字符串同时包含大写和小写字母。
现在,假设有一个临时变量,例如temp,在循环外部将其初始化为0,然后在循环内部以1开始递增
返回临时值
打印结果。
#include<iostream>
using namespace std;
int countalphabet(string str){
int res= 0;
//遍历字符串
for (int i = 0 ; i < str.size(); i++){
//由于所有大写字母都组合在一起
//和小写字母组合在一起,所以
//如果差异相等,则它们相同
if (i == (str[i] - 'a') || i == (str[i] - 'A')){
res++;
}
}
return res;
}
//主要功能
int main(){
string str = "aBnhooo";
cout <<”Count is:”<< countalphabet(str);
return 0;
}输出结果
如果我们运行上面的代码,它将生成以下输出
Count is: 2