C 中怎樣統計一個單詞中每個字母出現次數

時間 2023-03-22 06:30:09

1樓:匿名使用者

char str[100];

int a[128]=;用一個陣列記錄每個ascii字元出現的次數(當然在這隻需記錄大小寫英文字母),初始化為0;

cin>>str;

for(int i=0;str[i]!=0';i++)a[str[i]]+通過ascii碼在對應的陣列元素中加1;如str=『a』,則a[97]++a['a']和a[97]是一樣的,因為字元也相當於整數,如果要輸出大寫或小寫字母的出現次數,只需這樣查詢輸出就可以,如cout<

請問c語言當中,如何統計數字各自出現的次數

2樓:霜染楓林嫣紅韻

那非常複雜的問題,究竟要怎麼解決?你可以請教那些有程式設計經驗的老的程式設計師。

3樓:匿名使用者

你可以定義幾個變數用來統計各個數字出現的個數啊,它出現一次,變數就加1

4樓:鹹樂心

#include

int main(void)

; /定義數copy組,裡面的元素全部為0,用來統計0--9出現的次數。

int b=; 定義陣列b,裡面存放你要輸入的數字串int i ;

for(i=0;ifor(i=0;i<10;i++)

printf( "d",num[i]);

return 0;}

5樓:匿名使用者

定義b =

a[10] =

遍歷b陣列。

a[b[i]]+

最後輸出a陣列就行了。

c++,輸入字串,統計各個字母出現次數,顯示字母和次數,求大神知道咩

6樓:浪小客

1、首先我們選擇滑鼠單擊檔案裡的「新建」專案。

2、選擇為:控制檯應用程式 - 名稱:計算字串中每個字母的出現次數 - 確定。

3、之後我們選擇確定系統生成的**。

4、首先編寫一個字串進行測試。

5、測試**1:使用dictionary集合和迴圈來確定測試**。

6、測試結果1:程式成功執行後顯示每個字母的出現次數。

7樓:匿名使用者

#include

#include

void main()

; /定義一個存放頻率的陣列,fre[0]對應a,依此類推~gets(str);

for(int i=0;i='a' &str[i]<=z')fre[str[i]-'a']+

if(str[i]>=a' &str[i]<=z')fre[str[i]-'a']+

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

8樓:匿名使用者

#include

using namespace std;

void main(void)

; /存放輸入字串。

int frq[26] =記錄字元出現次數cout

int i=0;

int n_max = 0; /頻率最大值for( i = 0; i < strlen( c_str );i++)

// 按照出現頻率輸出。

while( n_max )

}n_max--;

c語言統計單詞個數問題!

9樓:武荊軻

#include ""

main()

printf("本行中共有%d個單詞。",num);

}其原理很簡單:

對每個字元進行判斷,如果是空格就把變數word標記為0,如果不是空格就判斷word是不是0(即判斷之前有沒有空格),如果存在空格單詞量加1,然後復位word變數為0。就這樣重複,知道句子結束。

10樓:匿名使用者

根據英語的書寫習慣,在每個單詞前後都會有空格分隔。 所以可以依據空格來劃分單詞。

不過,由於空格可能存在連續多個,所以僅統計空格數是不可以的,需要更復雜一些的演算法。

一、演算法設計:

核心思想是通過一個flag,來確定單詞的起始, 每出現一個單詞的起始,則表示存在一個單詞。 這樣統計出現的單詞起始個數,即可獲得單詞總數。

1、flag初始為1;

2、遍歷字串。

3、對於每個字元,如果出現非空格字元,且flag為1,則為單詞起始,累加計數器。同時賦值flag為0。

4、在flag為0情況下,如果出現空格,表示上一個單詞已經結束,設定flag為1。

5、 遍歷結束後輸出結果。

#include

int func(char *s)//計算單詞數函式。

}else if(s[i] =上一個單詞結束。

flag = 1;

}return n;//返回結果。

}int main()

11樓:痞孓寶

請問,這樣可不可以實現功能。

#include ""

main()

c++程式設計:統計一個字串中單詞個數,不知道我的程式**有問題,總是一個結果

12樓:網友

程式統計單詞的演算法沒有什麼問題,問題出在輸入帶空格字串的時候,採用了。

cin >>str;

的方式。這種方式下輸入字串,回車後,cin遇到第一個空格即停止讀入資料,導致無法輸入第一個空格後的字串。

解決方法:可以將輸入語句改為。, 100);

這種方式下,cin會讀取含空格的內容,遇到回車或讀入長度達到100時停止讀入。(注:示例中的100為程式中str陣列的大小,也可自行設定cin讀取的最大字串長度)

用26個字母組單詞,每個字母用一次

基本上沒這種可能性。因為母音字母只有5個,y可以充當半母音,其他剩下的20個都是子音,怎麼可能拼到一起?請問 用26個英文字母分別組合單詞,每個單詞只能使用一次。mr.jock,tv quiz phd,bags few lynx.翻譯 佐克先生,節目遊戲的哲學博士,贏取了一些貓。以上的是一句完美的 ...

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

武林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...

EXCEL中如何統計一列中所有字母的總個數

釋普定法師 count 0 code mid a1 a4,column a e 1 33025 按ctrl shift 回車鍵結束公式即可。所有漢字code函式返回的 都大於33025,利用這個返回碼可以輕易得出哪些是漢字,哪些不是漢字。另外還可以用公式 count 0 mid a1 a4,colu...