我想要一個代碼來計算陣列中字母的出現次數。我已經查看了確切的各種代碼,但他們都使用字符串。我的問題在於嚴格使用陣列。 我創建了一個代碼,但它返回:: 0 : 1 : 2 : 3 : 4 : 5 : 6 : 7 : ...
計算陣列中字母出現的次數
一個正確的示例: 輸入:
The quick brown fox jumps over the lazy dog.
輸出:
A: 1
B: 1
C: 1
D: 1
E: 3
F: 1 ...
以下是我的代碼:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main(void)
{
int i = 0;
int c;
char counts[26] = {0};
c = getchar();
while (c != EOF && i < 26) {
counts[i] = c;
i += 1;
c = getchar();
}
for (i = 0; i < 26; i++) {
if (counts[i] !=0)
printf("%c: %d", toupper(c), i);
}
return EXIT_SUCCESS;
}
凡你覺得你寫的每一個計數的炭量的代碼?.... – LPs
大加提供例如輸入預計輸出!目前它並不流行:p – xenteros
+1,正確測試eof。許多更有經驗的程序員不理解並正確使用它。讓我相信你會弄清楚計數和東西;-)。 –