C++primer5 题3.25
来源:互联网 发布:php request method 编辑:程序博客网 时间:2024/05/17 22:27
用下表运算符。。
这题要求有点多余,练习也就罢了,vector下标来做成绩分级计数就很不错了。。
我是通过创建一个数组(vector的影子),然后用数组给vector初始化来解决的
#include<iostream>#include<vector>#include<string>using namespace std;int main(){ unsigned grade=0,b[11]={},v=0; for(int i=1;i<11;++i) { if((cin>>grade)&&(grade<=100)) { v=grade/10; ++b[v]; } else { cout<<" wrong number!!!!!!!! reboot "; break; } } vector<unsigned> socres(begin(b),end(b)); for(auto &j:socres) cout<<j<<" "; return 0;}
直接按照书上的下标例子改写运行总是报错 ,故采用了数组的方法
以下的代码我运行时出错的。。。。
#include<iostream>#include<vector>#include<string>using namespace std;int main(){ unsigned grade=0,a=0; vector<unsigned> socres(11,0); for(auto it=socres.begin(),iw=socres.end();it!=iw;++it) { if(cin>>grade&&grade<=100) { a=grade/10; *(it+a)+=1; } else { cout<<" wrong number!!!!reboot again!!!"; break; } } for(auto &k : socres) cout<<k<<" "; return 0;}
看过另一个答主使用 while控制输入。。。
觉得还是不太完美,
但他通过不断初始化it的方法来累加的思路很赞。
毛病也很明显:当你误输入11个数或者更多时(输入个数靠个人控制)。。。程序还是在运行虽然11个数及其之后结果不输出来。
阅读全文
0 0
- C++primer5 题3.25
- c++primer5 题3.24
- c++primer5 题3.36
- c++Primer5,高级主题
- c++primer5 第一章
- c++primer5第二章
- c++primer5 3.17
- c++primer5 3.20答案
- c++Primer5--如何选择类型
- C++Primer5 笔记--迭代器运算
- C++primer5.2关系、逻辑操作符
- c++Primer5,类设计者的工具
- 重新学习《C++Primer5》第15章-面向对象程序设计
- c++Primer5,总览与IO库和泛型算法
- 重新学习《C++Primer5》第1-5章
- 重新学习《C++Primer5》第6章-函数
- 重新学习《C++Primer5》第7章-类
- 重新学习《C++Primer5》第8章-IO库
- 转: Java反射异常处理之InvocationTargetException
- 二进制 2017/11/19
- asp.net:验证控件中ValidationExpression的写法
- 001_Java语言基础知识
- IO模型
- C++primer5 题3.25
- 动态规划-入门篇
- 全文搜索引擎 Elasticsearch 入门教程
- java 开发 idea spring->resource添加多个资源配置文件夹
- 浅谈数据分库分表之道
- intellij IDEA右键没有Git或svn处理方法
- hdoj 2066 一个人的旅行
- 关于在python中, 在同一个project中的同一个目录里面, 导入模块的问题
- 3 栈和队列-栈的定义(待更改)