c++输入一行字符,分别统计出其中的英文字母,数字,空格和其他字符的个数
时间: 2023-11-07 22:38:21 浏览: 60
#include <stdio.h>
#include <ctype.h>
int main()
{
char str[100];
int i, letters, digits, spaces, others;
printf("输入一行字符:");
fgets(str, 100, stdin);
letters = digits = spaces = others = 0;
for (i = 0; str[i] != '\0'; i++)
{
if (isalpha(str[i]))
letters++;
else if (isdigit(str[i]))
digits++;
else if (isspace(str[i]))
spaces++;
else
others++;
}
printf("字母个数:%d\n", letters);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
return 0;
}
相关问题
用c++输入一行字符 分别统计出其中的英文字母,空格,数字和其他字符的个数
```c++
#include<iostream>
using namespace std;
int main(){
char ch;//定义字符变量
int letter = 0, space = 0, digit = 0, other = 0;//分别统计英文字母、空格、数字和其他字符的个数
cout<<"请输入一行字符:";
while(cin.get(ch)){//不断循环输入字符,直到输入结束
if(ch>='a' && ch<='z' || ch>='A' && ch<='Z'){//判断是否为英文字母
letter++;
}
else if(ch==' '){//判断是否为空格
space++;
}
else if(ch>='0' && ch<='9'){//判断是否为数字
digit++;
}
else{//其他字符
other++;
}
if(ch=='\n'){//遇到换行符结束循环
break;
}
}
cout<<"英文字母个数:"<<letter<<endl;
cout<<"空格个数:"<<space<<endl;
cout<<"数字个数:"<<digit<<endl;
cout<<"其他字符个数:"<<other<<endl;
return 0;
}
```
c++输入一行字符,分别统计出其中英文字母、空格、数字字符和其它字符的个数
以下是C++统计一行字符中英文字母、空格、数字字符和其他字符个数的代码:
```c++
#include <iostream>
using namespace std;
int main()
{
char c;
int letter = 0, space = 0, digit = 0, other = 0;
while ((c = getchar()) != '\n') // 逐个读取字符,直到读到换行符
{
if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) // 判断是否为字母
letter++;
else if (c == ' ') // 判断是否为空格
space++;
else if (c >= '0' && c <= '9') // 判断是否为数字
digit++;
else // 其他字符
other++;
}
cout << "字母个数:" << letter << endl;
cout << "空格个数:" << space << endl;
cout << "数字个数:" << digit << endl;
cout << "其他字符个数:" << other << endl;
return 0;
}
```
阅读全文