⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 find_error.cpp

📁 查错问题 文件名:check.* 输入文件:check.in(文本文件
💻 CPP
字号:
#include "cyio.h"
#include <map>
class FindError{
public:
	ifstream in;
	ofstream out;
	int n;
	int sum;
	map<string,int> dic;
	map<string,int> elist;
	FindError(char* inf,char* outf){
		in.open(inf);
		out.open(outf);
	}
	void run(){
		int i,j,k;
		string str;
		char ch;
		inNum(in,n);
		for (i=0;i<n;i++){
			getline(in,str);
			dic.insert(make_pair(str,1));
		}
		sum=0;
		vector<string> tstr;
		string patch;
		string sline;
		map<string,int>::iterator it;
		for (it=dic.begin();it!=dic.end();it++){
			pair<string,int> tp=*it;
			cout<<tp.first<<" : "<<tp.second<<endl;
		}
		while (!in.eof()){
			getline(in,sline);
			for (i=0;i<sline.size();i++){
				if (sline[i]==',' || sline[i]=='.' || sline[i]=='?' || sline[i]=='!') sline[i]=' ';
			}
			for (i=0;i<sline.size();i++){		
				if (sline[i]==' '){
					while (i+1!=sline.size() && sline[i+1]==' ') sline.erase(sline.begin()+i+1);
				}	
			}
			inStr(sline,tstr,string(" "));
			tstr[0].insert(tstr[0].begin(),patch.begin(),patch.end());
		for (i=0;i<tstr.size()-1;i++){
			str=tstr[i];
			cout<<"str: "<<str<<endl;
			
			if (dic.count(str)==0){
				elist[str]++;
				sum++;
				str.erase(str.begin(),str.end());
			}
		
			patch=tstr[tstr.size()-1];//单词折行的问题
		}
		
		}//end while
		if (dic.count(patch)==0){
					elist[patch]++;
						sum++;
					
		}
		
		for (it=elist.begin();it!=elist.end();it++){
			pair<string,int> tp=*it;
			cout<<tp.first<<" : "<<tp.second<<endl;
			out<<tp.first<<" ";
		}
		cout<<"sum :"<<sum<<endl;
		out<<endl<<sum<<endl;
	}
};
int main(){
FindError fe("check.in","check.out");
fe.run();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -