我有一个函数应该计算一个字母在句子中出现的次数,并基于此计算它在句子中出现的概率。为此,我有一句话:
华盛顿都会区是美国受教育程度最高、最富裕的都会区。
一组结构,包含字母、它出现的次数和出现的概率,每个字母字符都有一个结构,标点符号和空格有一个附加结构:
struct letters
{
char letter;
int occur;
double prob;
}box[53];
这是函数本身:
void probability(letters box[53], int sum
{
cout<<sum<<endl<<endl;
for(int c8=0;c8<26;c8++)
{
box[c8].prob = (box[c8].occur/sum);
cout<<box[c8].letter<<endl;
cout<<box[c8].occur<<endl;
cout<<box[c8].prob<<endl<<endl;
}
}
它正确识别出第一行句子中有90个字母,按照for循环第二行的结构打印出大写字母,并打印出它出现的次数。它不断地为概率打印 0。我究竟做错了什么?