题解 | #字符个数统计#

字符个数统计

https://www.nowcoder.com/practice/eb94f6a5b2ba49c6ac72d40b5ce95f50

#include <iostream>
#include <vector>
#include <string>
using namespace std;


/*编写一个函数,计算字符串中含有的不同字符的个数。
字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。
不在范围内的不作统计。多个相同的字符只计算一次
例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3 。*/

int main()
{
	//string str;
	char c;
	vector<char> vec;
	int count = 0;
	//把迭代器放到这里会不会失效?
	//cin >> str;
	while (c=getchar())
	{
		//
		if (vec.size() == 0)
		{
			vec.push_back(c);
		}
		if (c == '\n')
		{
			break; //结束
		}
		//如果输入的c与 数组vector中的没有相同的  则把c插入末尾
		//vector<char>::iterator iter = vec.begin();
		auto iter = vec.begin();
		for (; iter!= vec.end(); iter++)
		{
			if (*iter == c)
			{
				break;
			}
		}
		if (iter == vec.end())  //等于最后一位 说明没有中途跳出 没有遇到相等的字符
		{
			vec.push_back(c);
		}
	}
	cout << vec.size() << endl;
	system("pause");
	return 0;
}

全部评论

相关推荐

04-14 12:52
已编辑
门头沟学院 C++
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务