oj1129统计数字字符个数
时间: 2023-11-15 21:23:55 浏览: 46
这是一道简单的字符串处理题目。题目要求我们统计给定字符串中数字字符出现的次数。
我们可以遍历字符串中的每一个字符,判断它是否是数字字符。如果是,则计数器加一。最后输出计数器的值即可。
以下是示例代码实现:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
getline(cin, str); // 输入字符串
int count = 0;
for (int i = 0; i < str.length(); i++) {
if (isdigit(str[i])) { // 判断字符是否为数字字符
count++;
}
}
cout << count << endl; // 输出数字字符的个数
return 0;
}
```
希望可以帮助你解决这道问题。
相关问题
湘大OJ1345 素数字符串
湘大OJ1345题目要求判断给定的字符串是否为素数字符串。一个字符串被称为素数字符串,当且仅当它的长度大于等于2且其中的每对连续两个字符所代表的数字之和为素数。例如,"2368"是素数字符串,因为2+3=5,3+6=9,6+8=14,而5、9和14都是素数。你需要编写一个程序来判断给定的字符串是否为素数字符串。
c语言oj1065统计,东方博宜OJ
好的,这道题目是统计字符串中数字、字母和其他字符的个数,具体思路如下:
1. 定义三个变量用于统计数字、字母和其他字符的个数,初始值都为0;
2. 遍历字符串中的每个字符,判断其属于哪一类(数字、字母、其他字符),并将对应的计数器加1;
3. 最后输出三个计数器的值即可。
下面是一份参考代码:
```c
#include <stdio.h>
#include <ctype.h> // 包含isdigit和isalpha函数
int main()
{
char str[100];
int num_cnt = 0, alpha_cnt = 0, other_cnt = 0;
gets(str); // 读入字符串
for (int i = 0; str[i] != '\0'; i++) {
if (isdigit(str[i])) { // 判断是否为数字
num_cnt++;
} else if (isalpha(str[i])) { // 判断是否为字母
alpha_cnt++;
} else { // 其他字符
other_cnt++;
}
}
printf("num:%d\nalpha:%d\nother:%d", num_cnt, alpha_cnt, other_cnt); // 输出计数器的值
return 0;
}
```
注意:这里使用了`gets()`函数来读入字符串,但是`gets()`函数在输入过程中无法判断输入字符串的长度,可能会导致缓冲区溢出的问题,建议使用更安全的`fgets()`函数进行字符串的输入。