用c++编写输入一个字符串统计其中数字字母空格和其他字符的程序

 我来答
百度网友4f3fc44
2012-06-17 · TA获得超过3003个赞
知道小有建树答主
回答量:659
采纳率:50%
帮助的人:360万
展开全部
大致算法是:
cin 得到标准 string 字符串 str;
从 index=0 开始到 index=str.size() 依次扫描 str[index];
判断 str[index] 的 ASCII 码:
65~90 ('A'-'Z') 为大写字母,
97~122 ('a'-'z') 位小写字母,
32 (' ') 为空格,
48~57 ('0'-'9') 为数字,
剩下的为其他字符;
每个判断条件后跟一个自加1的变量, 最后变量的值就是统计结果.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
董俊锟djk
2012-06-17 · TA获得超过2552个赞
知道小有建树答主
回答量:1231
采纳率:66%
帮助的人:1030万
展开全部
#include<iostream>
#include<string>
using namespace std;

int main()
{
int i = 0;
int a = 0, b = 0, c = 0, d = 0;
char str[100];
cout<<"请输入字符串"<<endl;
gets(str);
while(str[i] != '\0')
{
if(str[i] >= 'a' && str[i] <= 'z'
|| str[i] >= 'A' && str[i] <= 'Z')
a++;
else if(str[i] >= '0' && str[i] <= '9')
b++;
else if(str[i] = 32)
c++;
else
d++;
i++;
}
cout<<"字母有"<<a<<endl
<<"数字有"<<b<<endl
<<"空格有"<<c<<endl
<<"其他有"<<d<<endl;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
文库地摊
2012-06-17 · TA获得超过1196个赞
知道小有建树答主
回答量:663
采纳率:100%
帮助的人:411万
展开全部
void CountChars(const char* pStr)
{
int iSumDigtal=0; // 数字
int iSumAlpha=0; // 字母
int iSumSpace=0; // 空格
int iSumOther=0; // 其他
while(*pStr!='\0')
{
if(*pStr >='0' && *pStr <='9')iSumDigtal++;
else if(*pStr >='A' && *pStr <='z')iSumAlpha++;
else if(*pStr ==' ')iSumSpace++;
else iSumOther++;
pStr ++;
}
printf("数字个数%d\n",iSumDigtal);
printf("字母个数%d\n",iSumAlpha);
printf("空格个数%d\n",iSumSpace);
printf("其他个数%d\n",iSumOther);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式