统计文件中各种字符(键盘上的所有可显示字符和换行符)出现的次数,文件格式为 .txt

#include<iostream>
#include<fstream.h>

void ReadFile(int count[])//读取指定的磁盘文件
{
	char ch;
	int i = 0;
	//定义文件输入文件流infile,以输入方式打开磁盘文件input.txt
	ifstream infile("input.txt",ios::in|ios::nocreate);
	if(!infile)
	{
		cerr<<"打开文件input.txt失败!"<<endl;
		exit(1);
	}

	while(infile.get(ch))//读取字符成功时执行以下语句
	{
		count[(int)ch]++;
		cout<<ch;//同时在显示器上输出
	}

	cout<<endl;
	
	for(i = 0; i < 128; i++)
	{
		if(count[i] != 0)
		{
			if(10 == i)//单独处理出现换行的情况
			{
				cout<<"该文件中 换行符 的总个数为: "<<count[i]<<" (个)!"<<endl<<endl;	
			}
			else if(32 == i)//单独处理出现空格符的情况
			{
				cout<<"该文件中 空格符 的总个数为: "<<count[i]<<" (个)!"<<endl<<endl;
			}
			else//输出其它字符
			{
				cout<<"该文件中字符 "<<(char)i<<" 的总个数为: "<<count[i]<<" (个)!"<<endl;
			}
		}
	}

	cout<<endl;
	infile.close();
}
int main()
{
	//从磁盘文件input.txt读入字符
	int count[128] = {0};//定义用于存储文件中各个字符出现次数的数组,可显示字符的ASCII值的范围:32---126
	ReadFile(count);
	return 0;
}

你可能感兴趣的:(统计,字符,出现次数)