题目描述
编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。
输入描述:
输入N个字符,字符在ACSII码范围内。
输出描述:
输出范围在(0~127)字符的个数。
分析:比较简单的方法是定义一个128大小的整形数组,当输入的字符的ACSII在0~127范围内,且是第一次出现的时候,个数加1。
程序:
#include<iostream>
#include<string>
using namespace std;
int main(){
string s;
while(getline(cin,s)){ //getline(cin,s)可输入一个带空格的字符串;
int a[128]={0};
int i=0,count=0;
while(i<s.size()){
if(s[i]>=0&&s[i]<128&&a[s[i]]==0){
count++;
a[s[i]]=1;
}
i++;
}
cout<<count<<endl;
}
return 0;
}