谁用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;
}
怎么统计每个数字出现的次数和其他字符出现的次数? 展开
#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;
}
怎么统计每个数字出现的次数和其他字符出现的次数? 展开
1个回答
展开全部
#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的数组就行了,读入的字符可以直接作为下标,系统会强制转换,不懂的给我留言就是
#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的数组就行了,读入的字符可以直接作为下标,系统会强制转换,不懂的给我留言就是
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询