[C++学习] C++ primer 习题 3.17

原创 2012年03月28日 14:16:12

自己做的习题,有错误敬请指正.

 

 

值得注意以下几点:

1.iterator 的使用

 

2.上次没有提到,这次补上.

注意这里循环的用法:

for( iter = vecStr.begin();iter!=vecStr.end();++iter,times++)

结束条件是 iter != vecStr.end().

包括上次的for( vector::size_type ix =0; ix != iVec.size(); ++ix)

 

这种以 "不等于" 作为 循环结束条件的方法,是书里面 "安全的范型编程"一小节 所强调的.

#include<iostream>
#include<string>
#include<vector>

using std::cin;
using std::cout;
using std::endl;
using std::vector;
using std::string;

int main()
{
	vector<string> vecStr;
	string strTemp;

	while( cin>>strTemp)
	{
		vecStr.push_back(strTemp);
	}

	vector<string>::iterator iter;
	for( iter = vecStr.begin();iter!=vecStr.end();++iter)
	{
		string::iterator iterStr;
		for(iterStr = (*iter).begin();iterStr!=(*iter).end();++iterStr)
		{
			(*iterStr) = toupper((*iterStr));
		}
	}

	int times = 0;
	for( iter = vecStr.begin();iter!=vecStr.end();++iter,times++)
	{
		if(!(times%8))
		{
			cout<<endl;
		}
		cout << *iter << ' ';
	}
	cout << endl;

	return 0;
}


 

c++ primer 练习 3.21、3.22、3.23

3.21 int: #include using std::cout; using std::endl; #include using std::vector; int main() { ...
  • u011392050
  • u011392050
  • 2017年03月28日 18:01
  • 332

c++ primer 练习 3.16、3.17、3.18、3.20

3.16 正确。 并且验证 (10, "hi")和{10 , "hi"}等效, 而{10} 和(10)的效果取决vector元素的类型。 3.17 #include us...
  • u011392050
  • u011392050
  • 2017年03月28日 08:51
  • 365

C++Primer第五版——习题答案+详解(完整版)

C++Primer第五版——习题答案详解       看的也比较快,但是有很多东西确实用不上,所以很多都没有深入的探讨,但是知识点覆盖的很全面,每一道题涉及的知识点我都写上简单的解释了。      ...
  • misayaaaaa
  • misayaaaaa
  • 2016年12月21日 16:11
  • 49355

C++ primer习题3.17

C++
  • coder1994
  • coder1994
  • 2016年12月01日 14:58
  • 151

C++ Primer 第四版中文完整版 和答案完整版

最近想再看一遍C++ Primer ,于是在网上找了第四版的电子版和习题答案 完整版的,现在传到CSDN上面供大家免费下载。希望能帮助到大家...... 本版本的电子版书籍和答案全部是完整版的。...
  • BBOOT
  • BBOOT
  • 2014年06月28日 15:12
  • 2320

C++Primer第五版 6.5.1节练习

练习6.40:下面的哪个声明是错误的?为什么?(a) int ff(int a, int b = 0, int c = 0) (b) char *init(int ht = 24, int wd, c...
  • fengzhanghao23
  • fengzhanghao23
  • 2015年09月15日 10:56
  • 911

C++Primer 中文版 第五版 第五章课后习题答案

前言:自己做的,如果有错误,要提出来哟... //5.1 空语句只包含一个; //5.2 块是有花括号括起来的部分 很多地方都用,while,for等等 //5.3 While(in...
  • Little_boy_z
  • Little_boy_z
  • 2016年06月03日 18:25
  • 1439

C++ primer 习题练习:3.17

习题3.13的迭代器版本:#include #include using namespace std;int main(){ vector ivec; int ival; //读入数据到vector对...
  • wwq100
  • wwq100
  • 2010年01月01日 11:14
  • 390

c++ Primer学习笔记

第一章 文件头及声明 关于extern 使用extern 声明而不定义,它是说明变量定义在程序其他地方   全局不初始化的extern int i; 是声明不定义;只要声明并且有初始化式,那么...
  • leiming32
  • leiming32
  • 2012年12月17日 23:57
  • 5216

C++ primer-练习5.14

编写一段程序,从标准输入中读取若干 string对象并查找连续重复出现的单词。所谓连续重复出现的意思是:一个单词后面紧跟着这个单词本身。要求记录连续重复出现的最大次数以及对应的单词。如果这样的单词存在...
  • qq_36393555
  • qq_36393555
  • 2016年12月16日 18:28
  • 271
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[C++学习] C++ primer 习题 3.17
举报原因:
原因补充:

(最多只允许输入30个字)