统计数字字符个数

GitHub跳转原题关系图返回列表

遍历整行字符串,用 isdigit 统计其中数字字符的数量。

OJ: noi_openjudge

题目 ID: ch0107-01

难度:入门

标签:字符串计数python

日期: 2026-07-30 23:01

题意

统计一行字符串中数字字符的个数。

思路

对每个字符调用 isdigit();布尔值可以直接求和,真值贡献 11

代码

Python代码

python
text = input()
print(sum(character.isdigit() for character in text))

C++代码

cpp
#include <cstdio>
#include <cstring>
char str[500];
int main(){
    int cnt = 0;
    while(1){
        int ans = scanf("%s",str);
        if( ans == EOF)
            break;
        int len = strlen(str);
        int i;
        for (i=0;i<len;i++){
            if( str[i] >= '0' && str[i] <= '9')
                cnt++;
        }
    }
    printf("%d",cnt);
    return 0;
}

复杂度

设字符串长度为 nn,时间复杂度为 O(n)O(n),额外空间复杂度为 O(1)O(1)

总结

字符分类统计可直接配合生成器表达式和 sum