帮忙看下 哪里错了!!!!

a330416020 2009-12-30 08:59:08
字符统计
时间限制(普通/Java):3000MS/10000MS 运行内存限制:65536KByte
总提交:49 测试通过:18

描述

给出一串字符,要求统计出里面的字母、数字、空格以及其他字符的个数。
字母:A, B, ..., Z、a, b, ..., z组成
数字:0, 1, ..., 9
空格:" "(不包括引号)
剩下的可打印字符全为其他字符。

输入

测试数据有多组。
每组数据为一行(长度不超过100000)。
数据至文件结束(EOF)为止。

输出

每组输入对应一行输出。
包括四个整数a b c d,分别代表字母、数字、空格和其他字符的个数。

样例输入


A0 ,

样例输出


1 1 1 1

#include <iostream>
using namespace std;
int main()
{
char c;
int w,x,y,z;
while(1)
{w=0;
x=0;
y=0;
z=0;
while((c=getchar())!='\n')
{
if((c>='a'&& c<='z')||(c>='A' && c<='z'))
w++;
else if (c==' ')
x++;
else if (c>='0' && c<='9')
y++;
else
z++;
}
cout<<w<<" "<<y<<" "<<x<<" "<<z<<endl;
}
return 0;
}
...全文
97 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
a330416020 2009-12-30
  • 打赏
  • 举报
回复
那我该怎么循环啊???
mstlq 2009-12-30
  • 打赏
  • 举报
回复
看到while(1)循环了……
请楼主自行分析一下,你这个循环有停止的时候吗?
asandsan 2009-12-30
  • 打赏
  • 举报
回复
int ch_cnt[256]; 可以为256吗????
lpf000 2009-12-30
  • 打赏
  • 举报
回复
你外城循环如何退出?
dskit 2009-12-30
  • 打赏
  • 举报
回复
可打印字符全为其他字符
你怎么处理???
方法:int ch_cnt[256]; 下边ch_cnt[i]表示ascii编码为i 出现的次数
char c;
++ch_cnt[c];

最后遍历ch_cnt,输出。

64,651

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧