不區分大小寫的字符個數統計

嚴正聲明:本文系作者davidhopper原創,未經許可,不得轉載。

問題描述

寫出一個程序,接受一個由字母和數字組成的字符串,和一個字符,然後輸出輸入字符串中含有該字符的個數。不區分大小寫。

輸入描述

第一行輸入一個有字母和數字以及空格組成的字符串,第二行輸入一個字符。

輸出描述

輸出輸入字符串中含有該字符的個數。

示例1

輸入

ABCDEF
A

輸出

1

說明

輸入、輸出不要添加任何多餘的字符,不需要進行輸入出錯處理。

答案

#include <string>
#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    std::string input;
    std::getline(std::cin, input);
    std::transform(input.begin(), input.end(), input.begin(),
                   [](char ch) { return std::toupper(ch);});
    char ch;
    std::cin >> ch;
    ch = std::toupper(ch);
    
    std::size_t count = -1;
    std::size_t pos = -1;
    do {
        ++count;
        pos = input.find(ch, pos + 1);
    } while (std::string::npos != pos);

    std::cout << count;
    
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章