機試 字元個數統計與篩選

2021-08-24 20:53:23 字數 1394 閱讀 3222

時間限制 c/c++ 3s 其他 6s, 空間限制 c/c++ 32768k 其他 65535k

題目描述

給定乙個長度不限的字串,請找出該字串中出現次數最多的那個字元,並列印出該字元及其出現次數; 如果多個字元的出 現次數相同,只列印首個字元;輸出字元的大小寫格式要與輸 入保持一致,大小寫不敏感模式下, 輸出字元的大小寫格式與該》 字元首次出現時的大小寫格式一致。實現時無需考慮非法輸入。

輸入描述

輸入為 字串大小寫敏感標記 其中」大小寫敏感標記」為可選引數,取值範圍為true|false,true表示大小寫敏感;預設取值true

例子: abcdabcde false

輸出描述

輸出:字元出現次數 如果出現次數最多的字元有多個,輸出字典序最小的那個字 符。輸出的字元都為小寫字元

例子: a 2

1、大小寫敏感時

用乙個陣列int arr_count[52] = ;來表示『a-za-z』52個字元每個字元在字串中出現的次數。然後遍歷陣列,找到最大值,及最大值的索引(從而找出最大數目的字元)

2、大小寫不敏感時

char buf[26] = ; //記錄 a-z a-z 26個大小寫不敏感字元中,最先出現的是大寫字元還是小寫字元

int count[26] = ;//每個字元的數量

然後遍歷陣列,找到最大值,及最大值的索引(從而找出最大數目的字元)

#include 

using namespace std;

int main()

; int

count[26] = ;

for (unsigned int i = 0; i < str_source.length(); ++i)

else

//大寫

}int

index = 0, max = 0;

for (int i = 25; i >= 0; -- i)

}cout << buf[index] << " "

<< count[index] << endl;

}else

//預設引數為true

; //52個字元的個數

for (unsigned int i = 0; i < str_source.length(); ++i)

intindex = 0, max = 0;

for (int i = 51; i >= 0; -- i)

}cout << char(index + 'a') << " "

<< arr_count[index] << endl;

}return

0;}

機試 字元個數統計

執行時間限制 10sec 記憶體限制 128mbyte 輸入 輸入乙個有字母和數字組成的字串,和乙個字元。輸出 輸出輸入字串中含有該字元的個數。樣例輸入 abcdef a 樣例輸出 1 注意 gets 函式在接受字串的時候並不會,把最後的 n 接受進來,在條件判斷的時候要注意。這一點啊。includ...

華為機試 字元個數統計

編寫乙個函式,計算字串中含有的不同字元的個數。字元在acsii碼範圍內 0 127 換行表示結束符,不算在字元裡。不在範圍內的不作統計。多個相同的字元只計算一次 例如,對於字串abaca而言,有a b c三種不同的字元,因此輸出3。輸入一行沒有空格的字串。輸出範圍在 0 127 字元的個數。示例1a...

華為機試(十) 字元個數統計

編寫乙個函式,計算字串中含有的不同字元的個數。字元在acsii碼範圍內 0 127 不在範圍內的不作統計。輸入n個字元,字元在acsii碼範圍內。輸出範圍在 0 127 字元的個數。輸入 abc 輸出 3 本題統計在ascii碼 0 127 範圍內字元出現的次數,則一共可能有128種字元出現,設定長...