C大神幫忙!一函式統計字串中各個字母(不區分大小寫)出現的頻

時間 2021-07-01 02:07:54

1樓:武林50我愛你

你的s2沒賦值而且你把int和char進行比較是什麼意思。。

給你寫了一個

#include

using namespace std;

int main()

else if(s[i] >= 'a' && s[i] <= 'z')

else;

}int max = -1, pos = -1;

for(int i = 0; i < 26; i++)}cout << (char)(pos + 'a') << " " << cnt[pos] << endl;

return 0;}

2樓:匿名使用者

建議你使用 std::map這東西,非常方便

#include

#include

std::mapalphamap;

alphamap.clear();

char ch;

讀取一個字母到 ch 後

ch = tolower(ch) //轉小寫

alphamap[ch] +=1;//std::map 對與沒有儲存的資料來會自動初始化一個並根據資料型別複製,例如 int 自動 初始化為0

最後只需要遍歷這個alphamap 就可以了其中 key就是出現螢幕最高的字母 value 就是出現的次數

std::map::iterator maxit = alphamap.begin()

for(std::map::iterator it = alphamap.begin(), it!= alphamap.end(), ++it)

std::cout<<"頻率出現最高的字母:"second;

編寫函式,統計給定字串中各個字母出現的次數,不區分大小寫

3樓:苒夏安

比如對hello,tom 進行統計

void count_chars(char s,int cnt)}main()

;int i;

count_chars(s,cnts);

for(i=0;i<26;i++)}

1. 編寫函式fun ,其功能是求形參指向字串中出現頻率最高的字母(不區分大小寫),並統計其出現的次數。

4樓:

主要思路:因為題目要求頻率最高的字母且不區分大小寫,那麼就對應的開一個陣列,儲存26個字母各自出現的字數就行了。

**如下:

void fun(char str) //必須保證字元陣列只含字母,如果不行就得先處理一遍陣列

for(i=0;i<26;i++) //輸出結果}}不懂的話再問

編寫函式,由實引數傳來字串,統計此字串中字母,數

取什麼名字才好呢啊哦 include using namespace std void main cout number include main count digits,white space,others printf digits for i 0 i 10 i printf d ndigit...

C語言 編寫函式,由實參傳來字串,統計此字串中字母,數字,空格和其他字元的個數

函式宣告在main的外面,強烈建議直接把函式寫在前面省的宣告了加上字串的標頭檔案string.h。迴圈直接用strlen獲取長度計算,你這樣子看起來太傻了。要返回多個整數的話可以用結構體做返回值,或者用指標 引用 做引數。char ch是指標的意思,初學者不行就用全域性變數。 汽水 char ch,...

python中輸入字串,統計字串中大小寫英文本母各有多少

str 1 input 請輸入乙個字串 lower 0 upper 0 for i in str 1 if i.islower lower 1 elif i.isupper upper 1 print 有 s個大寫字母 upper print 有 s個小寫字母 lower 換證薇 str 1 inp...