溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++怎么統(tǒng)計字符個數(shù)

發(fā)布時間:2021-12-17 16:44:43 來源:億速云 閱讀:1206 作者:iii 欄目:云計算

本篇內容介紹了“C++怎么統(tǒng)計字符個數(shù)”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

1、題目描述

編寫一個函數(shù),計算字符串中含有的不同字符的個數(shù)。字符在ACSII碼范圍內(0~127)。不在范圍內的不作統(tǒng)計。

輸入描述:

輸入N個字符,字符在ACSII碼范圍內(0~127)。

輸出描述:

輸出字符的個數(shù)。

輸入例子:

abc

輸出例子:

3

2、算法

方案一

/*編寫一個函數(shù),計算字符串中含有的不同字符的個數(shù)。字符在ACSII碼范圍內(0~127)。不在范圍內的不作統(tǒng)計*/
//輸入描述:輸入N個字符,字符在ACSII碼范圍內(0~127)
//輸出描述:輸出字符的個數(shù) #include<iostream>
 
using namespace std;
 
int main(){
    char ch;
    int arr[128]={0};
    int count=0;
    while(cin>>ch){
        if(ch>=0 && ch<=127){
            arr[ch]++;
        }
    }
    for(int i=0;i<128;i++){
        if(arr[i]>0)
            count++;
    }
    cout<<count<<endl;
    return 0;
}

方案二

/*C++
輸入字符,ascii值在[0,127]時插入集合set中,輸出set中的元素個數(shù)。*/
#include<iostream>
#include<set>
using namespace std;
int main()
{
    char c;
    set<char> s;
    while(cin>>c){
        if(c>=0 && c<=127){
            s.insert(c);
        }
    }
    cout << s.size() <<endl;
}

方案三

#include<iostream>
#include<string>
#include<map>
using namespace std;
int main()
{
   string s;
   int num=0;
   map<char,int> str;
   while(cin>>s)
   {
       for(int i=0;i<s.length();i++)
       {
           if((s[i]<=127)&&(s[i]>=0))
           {
              str.insert(pair<char,int>(s[i],1));
           }
           else
           {
              continue;
           }
       }
       cout<<str.size()<<endl;
   }
    return 0;  
}

“C++怎么統(tǒng)計字符個數(shù)”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網(wǎng)站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

c++
AI