一、题目描述
①描述
写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)数据范围: 1<=n<=1000
②输入描述
第一行输入一个由字母和数字以及空格组成的字符串,第二行输入一个字符。
③输出描述
输出输入字符串中含有该字符的个数。(不区分大小写字母)
④示例一
输入:ABCabc
???A
输出:2
二、代码实现
①Java代码实现
import java.util.*;
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
String begin="";
String end="";
char[] str;
int count=0;
while(scanner.hasNext()){
begin=scanner.nextLine();
end=scanner.nextLine();
str=begin.toCharArray();
for(int i=0;i<str.length;i++){
if(end.equalsIgnoreCase(String.valueOf(str[i])))
count++;
}
}
System.out.println(count);
}
}
②C++代码实现
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s;
char c;
getline(cin,s);
cin >> c;
int num = 0;
for(int i = 0;i < s.length();i ++){
if(s[i] >= 'A' && s[i] <= 'Z'){
char b = s[i]+32;
if(s[i] == c || b == c){
num ++;
}
}
if(s[i] >= 'a' && s[i] <= 'z'){
char b = s[i]-32;
if(s[i] == c || b == c){
num ++;
}
}
}
cout << num << endl;
return 0;
}
③C代码实现
#include<stdio.h>
#include<string.h>
int main(void)
{
char* s[100] = {0};
char* p = s;
char input = {0};
int i = 0;
int j = 0;
gets(s);
scanf("%c", &input);
while (p[i] != '\0')
{
if (tolower(p[i]) == tolower(input))
{
j++;
}
i++;
}
printf("%d", j);
return 0;
}
|