传送门:统计数字字符个数 - 洛谷
这道题主要的知识点就是对数字字符的判断
有两种方式
//ch为待判断的字符
if(ch>='0'&&ch<='9')
或
if(isdigit(ch))//isdigit() 是用来判断 字符是否是数字字符 的函数
其次,输入建议用 getline(cin,str); 输入整行的 string 类字符串 接着逐个对字符进行判断,累加
因为洛谷不能用 gets() 和 getchar()
代码如下
#include<bits/stdc++.h>
using namespace std;
string s;
int sum,len;
int main()
{
getline(cin,s);//这种输入只针对 string 类
len=s.length();// xxx.length() 是计算 string 类长度的函数
for(int i=0;i<len;i++){
if(isdigit(s[i])){//判断 也可用(s[i]>='0'&&s[i]<='9')替换
sum++;
}
}
cout<<sum;
return 0;
}
再见