谁用C++帮我写一个程序?从一个文本文件读取正文,统计每个数字出现的次数和其他字符出现的次数。

读取正文的程序如下:#include<iostream>#include<fstream>#include<string>usingnamespacestd;intmai... 读取正文的程序如下:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main()
{

string s;
ifstream inf( "D:\\test.txt" );
if( !inf )
{
cout << "打开失败" << endl;
return -1;
}

while ( getline( inf,s ) )
{
cout << s << endl <<endl;
}
inf.close();
return 0;
}
怎么统计每个数字出现的次数和其他字符出现的次数?
展开
 我来答
百度网友3b7eeb492
2010-09-16 · TA获得超过2489个赞
知道小有建树答主
回答量:339
采纳率:0%
帮助的人:600万
展开全部
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main()
{

char ch;
int freq[256];
int i;

ifstream inf( "D:\\test.txt" );
if( !inf )
{
cout << "打开失败" << endl;
return -1;
}

for (i=0;i<256;i++) freq[i]=0;

while (!inf.eof())
{
ch=inf.get();
freq[ch]++;
cout <<ch;
}
cout <<endl;
for (i='0';i<='9';i++) cout<<(char)i <<" : " <<freq[i] <<endl; //数字
for (i='a';i<='a';i++) cout<<(char)i <<" : " <<freq[i] <<endl; //小写字母
for (i='A';i<='Z';i++) cout<<(char)i <<" : " <<freq[i] <<endl; //大写字母
//for (i=0;i<=255;i++) cout<<(char)i <<" : " <<freq[i] <<endl; //所有ASCII码字符
inf.close();
return 0;
}

VC9.0编译通过。这个其实很简单,文本文件由ASCII组成,包括各种字符、数字、段落符号等等。标准ASCII码的范围是0~255,建立一个0~255的数组就行了,读入的字符可以直接作为下标,系统会强制转换,不懂的给我留言就是
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式