1. 程式人生 > >請編寫相關函式來完成對一段英文字串進行字母統計功能,出現最多那個字母的出現次數,不區分大小寫。

請編寫相關函式來完成對一段英文字串進行字母統計功能,出現最多那個字母的出現次數,不區分大小寫。

思路:
1、對字串進行過濾,把英文字母過濾出來。
2、將所有英文字母統一轉成小寫(大寫)。
3、將待求的字串與26個字母進行比較並統計個數
4、統計出現最多的字母。

原始碼:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char s_str[] = "abcdefghijklmnopqrstuvwxyz";
int GetEngCount(char* szStr, char c)
{
int i = 0;
int EngCount = 0;
while(*(szStr+i) != '\0')
{
if((szStr[i] >= 'a' && szStr[i] <= 'z') || (szStr[i] >= 'A' && szStr[i] <= 'Z'))
{
if(szStr[i] >= 'A' && szStr[i] <= 'Z')
{
szStr[i] = szStr[i]+32;
}
if(szStr[i] == c)
{
EngCount++;
}
}
i++;
}
return EngCount;
}
char GetMaxCountChar(char *szSrc, int index)
{
int iPos = 0;
int iMaxCount;
while(*(s_str+index) != '\0')//定位標誌的字串
{
int iCount = GetEngCount(szSrc, s_str[index]);
if(iMaxCount <= iCount)
{
iMaxCount = iCount;
iPos = index;
}
index++;
}
return s_str[iPos];
}
int main(int argc, char* argv[])
{
int index = 0;
char str[] = "a.gAg.Vg.wgwh,,
[email protected]
\80k+6*1g87&37pge";
printf("%s 字元中出現最多的字母為: %c\r\n", str, GetMaxCountChar(str, index));
return 0;

}

相關推薦

編寫相關函式完成英文字串進行字母統計功能出現那個字母出現次數區分大小寫

思路:1、對字串進行過濾,把英文字母過濾出來。2、將所有英文字母統一轉成小寫(大寫)。3、將待求的字串與26個字母進行比較並統計個數4、統計出現最多的字母。原始碼:#include <stdio.h>#include <stdlib.h>#includ

MySQL 時間內每天資料統計案例--sql優化

在網際網路專案中,對專案的資料分析必不可少。通常會統計某一段時間內每天資料總計變化趨勢調整營銷策略。下面來看以下案例。 案例 在電商平臺中通常會有訂單表,記錄所有訂單資訊。現在我們需要統計某個月份每天訂單數及銷售金額資料從而繪製出如下統計圖,進行資料分析。

隻猴子有100個香蕉把香蕉搬到50米之外的家裡每次拿50個香蕉每走米要吃掉一個香蕉最後家裡能剩下幾個香蕉

題目:一隻猴子有100個香蕉,把香蕉搬到50米之外的家裡,每次最多拿50個香蕉,每走一米要吃掉一個香蕉,最後家裡能剩下幾個香蕉。 答案: 很多人的方案:猴子先搬50根,走17米,在回來搬50根走到17米處,回來後再搬剩下的49根走完33米,最後得到16根!   但是其實可以剩下17根。 猴

go語言面試題:輸入英文字串找出重複出現次數字母

package main import ( "bufio" "os" "fmt" "strings" ) func main() { reader := bufio.NewReader(os.Stdin) str, err := reader.

2的n次冪判斷個數是否能寫成m個2相乘LeetCode 231號問題 給定一個整數編寫一個函式判斷它是否是 2 的冪次方

2的n次冪,判斷一個數是否能寫成m個2相乘,LeetCode 231號問題 給定一個整數,編寫一個函式來判斷它是否是 2 的冪次方。 示例 1: 輸入: 1 輸出: true 解釋: 20 = 1 示例 2: 輸入: 16 輸出: true 解釋: 24 = 16 示例 3:

給定n括號編寫一個函式生成正確括號的所有組合

本題源自leetcode ----------------------------------------------------------------------------------------------- 思路:  1  用回溯法。用變數m 表示左括號的數量。n

編寫一個函式使其可以刪除某個連結串列中給定的(非末尾)節點你將只被給定要求被刪除的節點

今天給大家分享一個小題目,如下: 請編寫一個函式,使其可以刪除某個連結串列中給定的(非末尾)節點,你將只被給定要求被刪除的節點。 現有一個連結串列 -- head = [4,5,1,9],它可以表示為: 4 -> 5 -> 1 -> 9

面試題:編寫一個函式查詢字串陣列中的長公共字首 如果存在公共字首返回空字串 ""(c++實現)

例項說明 示例 1: 輸入: ["flower","flow","flight"] 輸出: "fl" 示例 2: 輸入: ["dog","racecar","car"] 輸出: "" 解釋: 輸入不存在公共字首。 說明: 所有輸入只包含小寫字母 a-z&

C++編寫一個函式查詢字串陣列中的長公共字首如果存在公共字首返回空字串 ""

設定一個臨時變數儲存第一個字串的每一位就可以了,比較第2-n個字串的是否一直相等 是的話儲存,不是的話返回之前的字串。 可能三個字串完全相同,所以最後還應該有一個return  示例 1: 輸入: ["flower","flow","flight"] 輸出: "f

前端演算法:給定兩個陣列編寫一個函式計算它們的交集(兩個陣列的交叉點)

給定兩個陣列,編寫一個函式來計算它們的交集。 例1: 輸入: nums1 = [1,2,2,1],nums2 = [2,2] 輸出:[2,2] 例2: 輸入: nums1 = [4,9,5],nums2 = [9,4,9,8,4] 輸出:[4,9] 注意: 結果

編寫C++函式:識別string字串是IPv4還是IPv6

今天做到Calix(南京凱易迅)的筆試題,其中有一題大致意思是:vector<string>中存有string字串,識別每一個字串是否是ip地址,三種可能:IPv4、IPv6、Neither,將每個字串的識別結果依次存入一個vector<str

sparkSQL完成Hive的操作

接下來做的操作是:(這個操作,將程式打成jar包到叢集中執行)(1)編寫spark程式在線上的hive中建立表並匯入資料(2)查詢hive中的資料(3)將查詢結果儲存到MySQL中程式碼: object SparkSqlTest { def main(args: Array[String]): Un

假設你獲取了使用者輸入的日期和時間如2015-1-21 9:01:30以及一個時區資訊如UTC+5:00均是str編寫一個函式將其轉換為timestamp——python學習筆記

1. 題目: 假設你獲取了使用者輸入的日期和時間如2015-1-21 9:01:30,以及一個時區資訊如UTC+5:00,均是str,請編寫一個函式將其轉換為timestamp。 2. 程式碼如下: import re from datetime import datetime,

LeetCode 100 給定兩個二叉樹編寫一個函式檢驗它們是否相同 如果兩個樹在結構上相同並且節點具有相同的值則認為它們是相同的

給定兩個二叉樹,編寫一個函式來檢驗它們是否相同。 如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。 /** * Definition for a binary tree node. * struct TreeNode { *

Python實現一元二次方程的定義是:ax2 + bx + c = 0 編寫一個函式返回一元二次方程的解

wechat:812716131 ------------------------------------------------------ 技術交流群請聯絡上面wechat ----------------------------------------------

C++組pair資料進行排序(sort函式的使用)

最近在寫一個演算法的時候,把一些資料存在了pair中,並且需要根據pair中first或者second的值對這些資料進行排序。比如:輸入資料(1,2)、(4,2)、(3,3)、(2,1)根據first的值大小進行升序排序,輸出(1,2)、(2,1)、(3,3)、(4,2)。經過思索之後得到的實現方法如下:首先

Java leecode,14題:編寫一個函式查詢字串陣列中的長公共字首如果存在公共字首返回空字串 ""

編寫一個函式來查詢字串陣列中的最長公共字首。 如果不存在公共字首,返回空字串 ""。 示例 1: 輸入: ["flower","flow","flight"] 輸出: "fl" 示例 2: 輸入: ["dog","racecar","car"] 輸出: "" 解釋

用map函式完成Python並行任務的簡單示例

眾所周知,Python的並行處理能力很不理想。我認為如果不考慮執行緒和GIL的標準引數(它們大多是合法的),其原因不是因為技術不到位,而是我們的使用方法不恰當。大多數關於Python執行緒和多程序的教材雖然都很出色,但是內容繁瑣冗長。它們的確在開篇鋪陳了許多

LeetCode14 編寫一個函式查詢字串陣列中的長公共字首 如果存在公共字首返回空字串 ""

class Solution { public: string longestCommonPrefix(vector<string>& strs) { if(strs.size() == 0)

使用直接排序法維數組進行排序

highlight 維數 csharp ray pre 使用 str urn nbsp 實現效果:    實現原理:    實現代碼: public int[] sory(int[] intArray) { for