B2109题解
题目要求求出字符串里的数字字符个数,可以根据字符的 ASCII 码来判定。
if (s[i] <= '9' && s[i] >= '0')
cnt++;
这里我使用了 C++ 独有的 string 类型的字符串。
在读入时需要注意,如果你写成这样:
cin >> s;
那么你就只能获得 50 分,因为字符串中有空格,需要整行读入。
AC Code:
#include <bits/stdc++.h>
using namespace std;
int main(){
string s;
getline(cin, s);//要用 getline
int cnt = 0;
for (int i = 0; i <= s.length() - 1; i++){//注意范围
if (s[i] <= '9' && s[i] >= '0')//判断
cnt++;
}
cout << cnt << endl;
return 0;
}