我的代碼以隨機順序打印字符的頻率。可以做些什麼,以便按給定單詞的順序打印字符的頻率。我當前的代碼如下所示我希望我的代碼以字符串的出現順序打印字符的頻率
#include <stdio.h>
#include <conio.h>
void main() {
char string1[50];
int i = 0, counter[26] = { 0 };
printf("\nEnter a string\n");
//Inputs a string
gets(string1);
while (string1[i] != '\0') {
//checks and includes all the characters
if (string1[i] >= 'a' && string1[i] <= 'z') {
//counts the frequency of characters
counter[string1[i] - 'a']++;
i++;
}
}
//printing frequency of each character
for (i = 0; i < 26; i++) {
if (counter[i] != 0)
printf("%c occurs %d times.\n", i + 'a', counter[i]);
}
getch();
}
輸出樣本:
你的問題有點不清楚。您是否說代碼正常工作,除了它跳過字符串中的第一個字符? –
它不會打印字符串中第一個字符的頻率。除此之外,它會打印字符串中的所有字符 –
向我們展示一些樣本輸入,實際輸出和預期輸出。 – dbush