當前位置:首頁 » 編程語言 » c語言統計最高頻率的字母
擴展閱讀
移動硬碟隱藏文件 2022-06-30 15:14:51
海綿視頻存儲位置 2022-06-30 15:09:08

c語言統計最高頻率的字母

發布時間: 2022-06-23 22:17:39

㈠ 字母頻率統計-c語言

1、char a2[][26]={0};

按照你這種寫法 這個數組只有一行,也就是等效於char a2[1][26]={0};

所以當出現超過一個字元的時候 調用越界,導致崩潰。

如果你准備用二維數組的話,那麼大小需要動態分配。

但實際上,沒必要用數組,直接輸出就好了。

2、 輸入沒有說以.結束,而是說以ctrl+z結束。

改了一版代碼,你看看:

#include<stdio.h>
intmain()
{
intc;
inta[26]={0};
inti=0,j=0,max;

while((c=getchar())!=EOF)
{
if(c>='a'&&c<='z')
a[c-'a']++;
}//用a[0]大小表示字母a出現次數,其他字母分別用a[1],a[2]…a[25]表示。

for(i=1,max=a[0];i<26;i++)
{
if(a[i]>max)
max=a[i];
}
for(i=max;i>0;i--)
{
for(j=0;j<26;j++)
{
if(a[j]>=i)putchar('*');
elseputchar('');
}
putchar(' ');
}
printf("abcdefghijklmnopqrstuvwxyz ");
return0;
}

㈡ c語言統計出現次數最多的字母

b數組雙括弧內的就是a[i],取大寫字母A,就是把相應的大寫字母轉換為序號,比方說大寫A就轉換為0,大寫B就轉化為1等等照此類推,然後就統計他們的個數。

㈢ c語言 字元串 找出頻率最多的字母及其個數

#include<stdio.h>

int main()

{

char s[200];

int a[128]={0};

int i,maxi=0;

gets(s);

for(i=0;s[i];i++)

a[s[i]]++;

for(i=32;i<128;i++)

if(a[i]>a[maxi])maxi=i;

printf("出現最多的是%c,出現了%d次 ",maxi,a[maxi]);

return 0;

}

㈣ c語言怎麼求字元串中出現次數最多的字母

如圖,我把字元的值當成數組的下標來用,當該字元出現一次,其對應的數組下標+1;最後在看看數組中那個數最高就知道了,

㈤ 怎麼用c語言統計一個字元串中出現最多的字母,並輸出這個字元出現的次數

摘要 構建一個循環,從頭到尾掃描字元串,比如abcabcd,首先判斷所掃描的字元是否出現過,若沒出現過,構建一個變數,初始值為一(變數與字母一一對應,變數的值即為該字元出現的次數);若出現過,使其所對應的變數加一。循環結束以後,比較這幾個變數的大小,可以用冒泡法或快排,將最大值輸出。具體程序並不復雜,相信樓主可以完成,樓下那個開數組的方法比較浪費內存,不建議使用。