y用c++编写程序用于统计一个字符串中字母、数字、空格以及其它字符的个数。在主函数中输入字符串后,调用函数:void fun(char *p, int n),并输出统计结果。要求用指针实现。 【输入形式】 一个字符串(回车结束); 【输出形式】 字符串中字母、数字、空格以及其它字符的个数统计结果(输出数据之间用逗号分隔); 【样例输入】 visual c++ 6.0 【样例输出】 7,2,2,3
时间: 2024-01-22 12:19:57 浏览: 47
以下是代码实现:
```c++
#include <iostream>
using namespace std;
void fun(char *p, int n)
{
int letters = 0, digits = 0, spaces = 0, others = 0;
for (int i = 0; i < n; i++)
{
if (isalpha(p[i]))
letters++;
else if (isdigit(p[i]))
digits++;
else if (isspace(p[i]))
spaces++;
else
others++;
}
cout << letters << "," << digits << "," << spaces << "," << others << endl;
}
int main()
{
char str[100];
cin.getline(str, 100);
int n = strlen(str);
fun(str, n);
return 0;
}
```
首先在主函数中输入字符串,然后调用 `fun()` 函数进行统计,并输出结果。在 `fun()` 函数中,使用 `isalpha()` 判断是否为字母,使用 `isdigit()` 判断是否为数字,使用 `isspace()` 判断是否为空格,其余的字符都算作其它字符。最后输出四个计数器的值即可,用逗号分隔。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)