C++输入一行字符统计其中英文字母数字字符和其他字符的个数
时间: 2023-05-12 20:04:50 浏览: 74
C知道回答:好的,这个问题可以回答。以下是统计英文字母、数字字符和其他字符个数的 C 代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i, alphabets = 0, digits = 0, others = 0;
printf("请输入一行字符:\n");
fgets(str, 100, stdin);
for (i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) {
alphabets++;
} else if (isdigit(str[i])) {
digits++;
} else {
others++;
}
}
printf("英文字母个数:%d\n", alphabets);
printf("数字字符个数:%d\n", digits);
printf("其他字符个数:%d\n", others);
return 0;
}
```
这个程序可以读入一行字符,然后统计其中英文字母、数字字符和其他字符的个数。
相关问题
C++输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数
C++输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数可以使用getchar()函数逐个读取字符,并根据字符的ASCII码值判断其属于哪一类。具体实现可以参考以下代码:
```
#include <iostream>
using namespace std;
int main() {
char c;
int letter = 0, space = 0, number = 0, other = 0;
cout << "请输入一行字符:" << endl;
while ((c = getchar()) && (c != '\n')) {
if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'))
letter++;
else if (c == ' ')
space++;
else if (c >= '0' && c <= '9')
number++;
else
other++;
}
cout << "英文字母个数为:" << letter << endl;
cout << "空格个数为:" << space << endl;
cout << "数字个数为:" << number << endl;
cout << "其他字符个数为:" << other << endl;
return 0;
}
```
c++输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数
以下是C++统计输入字符串中各种字符个数的代码:
```c++
#include <iostream>
using namespace std;
int main()
{
char str[100];
int letter = 0, space = 0, digit = 0, other = 0;
cout << "请输入一行字符:" << endl;
cin.getline(str, 100); // 输入一行字符
for (int i = 0; str[i] != '\0'; i++) // 遍历字符串
{
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) // 判断是否为字母
letter++;
else if (str[i] == ' ') // 判断是否为空格
space++;
else if (str[i] >= '0' && str[i] <= '9') // 判断是否为数字
digit++;
else // 其他字符
other++;
}
cout << "字母个数:" << letter << endl;
cout << "空格个数:" << space << endl;
cout << "数字个数:" << digit << endl;
cout << "其他字符个数:" << other << endl;
return 0;
}
```