我在初学者的c ++课程中。目前,我们正在开展一个项目,该项目将计算字母表中每个字符在用户输入的短语中的次数。程序会将所有内容输出到表格中(从左到右:字母 | 出现次数 | 特定字符在整个短语中的百分比 | 表示最接近百分比的百分比的直方图)
This is THE most pernicious,
puzzling programming project yet,
but at least we can work in pairs.
^D
A 5 6.4% ******
B 1 1.3% *
C 3 3.8% ****
D 0 0.0%
等等等等。
我遇到错误,类型为“double”和“double”的无效操作数对二元运算符%
我知道它与我的代码中的 % 运算符有关,但我不完全确定我是否理解我如何错误地使用它以及是否可以得到某种解释。
以下是它所涉及的功能:
void printchar ( const char s[], int length, double freq[], const char letters[ )
int j = 0;
int i = 0;
double percent = freq[i]/length;
for ( i = 0; i < 26; i++ )
{
cout << letters[i] << setw(5) << freq[i] << setw(5)
<< setprecision(1) << fixed << percent;
if(percent % 1.0 < .5)
cout << "*";
for( j = 0; j <= percent; j++)
cout << "*";
}
我知道有很多清理工作要做,但我试图弄清楚我是如何错误地使用 % 操作数的。任何内容丰富的回复将不胜感激。
谢谢