题解 | 计算某字符出现次数
刚开始没有考虑数字的情况,总是输出的比预期多,加入数字区分之后如下
#include <iostream> using namespace std; int main() { string s; getline(cin,s); int length = s.length(); char c; cin >> c; int count = 0; for(int i = 0;i<length;i++) { if(c == '0'||c == '1'||c== '2'||c == '3'||c == '4'||c == '5'||c == '6'||c == '7'||c == '8'||c == '9') { if(s[i] == c) { count++; continue; } } else { if(s[i] == c || s[i]+32 == c || s[i]-32 == c) { count++; continue; } } } cout << count; } // 64 位输出请用 printf("%lld")