信息学奥赛一本通 统计数字字符个数
时间: 2023-08-31 09:12:59 浏览: 113
1187 统计字符数(信息学奥赛一本通).cpp
题目描述:
输入一行字符串,统计其中数字字符出现的次数。
输入格式:
共一行,包含一个长度不超过 100 的字符串。
输出格式:
输出一个整数,表示数字字符出现的次数。
样例输入:
`12abc34de7`
样例输出:
`5`
算法1:
遍历字符串,判断每一个字符是否为数字字符,如果是,则计数器加 1,最后输出计数器的值。
C++ 代码:
```cpp
#include <iostream>
using namespace std;
int main()
{
string str;
cin >> str;
int cnt = 0;
for (int i = 0; i < str.size(); i++)
{
if (isdigit(str[i]))
{
cnt++;
}
}
cout << cnt << endl;
return 0;
}
```
算法2:
使用 STL 中的 count_if 函数,统计数字字符的个数。
C++ 代码:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
string str;
cin >> str;
int cnt = count_if(str.begin(), str.end(), [](char c) {
return isdigit(c);
});
cout << cnt << endl;
return 0;
}
```
阅读全文