4-5.cpp

来自「Accelerated C++ 课后练习题 本人自己完成、可供参考」· C++ 代码 · 共 46 行

CPP
46
字号
#include<iostream>
#include<string>
#include<vector>
using namespace std;
struct management
{
	string name;
	int times;
};

int main()
{
	vector<struct management> manage;
	string s;
	string::size_type maxlen=0;
	int sum=0;

	while(cin>>s)
	{
		if(s=="exit")
			break;
		++sum;
		
		maxlen=_MAX(maxlen,s.size());

		vector<struct management>::size_type i=0;
		if(manage.size()!=0)
		for(;i<manage.size()&&s!=manage[i].name;++i);
		if((i==manage.size())||manage[i].name!=s)
		{
			struct management temp;
			temp.name=s;
			temp.times=1;
			manage.push_back(temp);
		}
		else 
			++(manage[i].times);
}

	vector<struct management>::size_type i=0;
	for(;i<manage.size();++i)
		cout<<manage[i].name<<string(maxlen-manage[i].name.size()+3,' ')
		    <<manage[i].times<<endl;

	return 0;
}

⌨️ 快捷键说明

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