本文共 1004 字,大约阅读时间需要 3 分钟。
《C++ Primer》(第五版)中计算vector对象中的索引这一小节中,举例要求计算各个分数段各有多少个成绩。
代码如下:
#include#include #include using namespace std;int main(){ vector scores(11, 0); unsigned grade; while (cin >> grade){ if (grade <= 100) ++scores[grade/10]; } return 0;}
当需要输出时,自己试着敲入:
cout << scores << endl;
发现程序报错:
error: invalid operands to binary expression ('ostream' (aka 'basic_ostream') and 'vector ')
发现是类型问题,所以重新定义一下scores类型,使用范围for语句:
for (auto i : scores) cout << i << " ";cout << endl;
改为:
#include#include #include using namespace std;int main(){ vector scores(11, 0); unsigned grade; while (cin >> grade){ if (grade <= 100) ++scores[grade/10]; } for(auto i : scores) cout << i << " "; cout << endl; return 0;}
这样就能把各个分数段各有多少个成绩序列打印出来了。
转载地址:http://dwzsl.baihongyu.com/