1. 程式人生 > >常用字元(string函式庫,字元陣列的輸入與處理)

常用字元(string函式庫,字元陣列的輸入與處理)

編寫程式,實現求最常用字元。英文字母裡出現頻率最高的是哪個字母呢? 給定一個字串,輸出字串中出現次數最多的字母。輸入要求:輸入一個只含有大小寫字母和空格的字串,長度不超過100,以回車結束。輸出要求:輸出一個小寫字母,表示該字串中出現次數最多的字母。若答案有多個,則只輸出ASCII碼最小的那個。

 

 輸入樣例:
An apple


輸出樣例:

考察函式庫的初步使用及字串的輸入與處理

#include<stdio.h>
#include<string.h>
int main()
{
    int i,b[26]={0},max,p;
    char a[100];
    gets(a);			//給字元陣列輸入字串
    int len = strlen(a);		//檢測字元陣列的長度
    for(i=0;i<len;i++)
    {
        if(a[i]>='A'&&a[i]<='Z')
            a[i]=a[i]+32;
        b[a[i]-'a'+1]++;		//使陣列序號和字母序號一一對應,不從0開始。
    }
    max=b[0];
    for(i=1;i<=26;i++)
    {
        if(max<b[i])
        {
            max=b[i];
            p=i;
        }
    }
    printf("%c",p+'a'-1);
    return 0;
}