[蓝蓝计算机考研算法训练二期]-day04

71 阅读1分钟

7、day04-计算字符的个数

写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)

数据范围:1<= n<=1000

输入描述

第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。

输出描述

输出输入字符串中含有该字符的个数。(不区分大小写字母)

示例1

输入:
ABCabc
A
输出:
2

思路

先输入一个字符串,将字符串中所含分为空格和非空格,再将非空格中分为数字和字母,注意分开判断。

具体实现

#include<iostream>
#include<string> 
using namespace std;

int main(){
	string s;
	char a;
	getline(cin,s);
	int len=s.length();
	cin>>a;
	char *p=&s[0];
	int count=0;
	for(int i=0;i<len;i++){
		if(a!=' '){
			if((int)a>=48&&(int)a<=57){
			  if(s[i]==a){
			  	count++;
			  } 
		   }
		   else{
		   	if(s[i]==a||s[i]==a+32||s[i]==a-32){
		   		 count++;
			   }
		   }
	   }
	   else{
	   	if(s[i]==a){
	   		count++;
		   }
	   }
    }
    cout<<count;
}