C++ primer(第五版) 练习 3.43 个人code
2014-07-27 15:54
591 查看
C++ primer(第五版) 练习 3.43
题目:编写3个不同版本的程序,令其均能输出ia的元素。版本1使用范围for语句管理迭代过程;版本2和版本3都使用普通的for语句,其中版本2要求用下标运算符,版本3要求用指针。此外,在所有3个版本的程序中都要直接写出数据类型,而不能使用类型别名、auto关键字或decltype关键字。
答:
执行结果:
C++ primer(第五版) 练习 3.43
题目:编写3个不同版本的程序,令其均能输出ia的元素。版本1使用范围for语句管理迭代过程;版本2和版本3都使用普通的for语句,其中版本2要求用下标运算符,版本3要求用指针。此外,在所有3个版本的程序中都要直接写出数据类型,而不能使用类型别名、auto关键字或decltype关键字。
答:
#include <iostream> #include <cstddef> using std::cout; using std::endl; using std::size_t; int main() { int ia[3][4] = { { 0, 1, 2, 3 }, { 4, 5, 6, 7 }, { 8, 9, 10, 11 } }; //版本1:使用范围for语句管理迭代过程。 cout << "以下是用范围for输出:" << endl; for (int (&a)[4] : ia) for (int &b : a) cout << b << " "; cout << endl; //版本2:普通for循环,并用下标运算。 cout << endl << "以下是用普通for输出:" << endl; for (size_t i = 0; i != 3; i++) { for (size_t j = 0; j !=4; j++) { cout << ia[i][j] << " "; } } cout << endl <<endl << "以下是用指针输出:" << endl; //版本3:用指针 for (int(*p1)[4] = ia; p1 != ia + 3; p1++) { for (int *p2 = *p1; p2 != *p1 + 4; p2++) { cout << *p2 << " "; } } cout << endl; return 0; }
执行结果:
相关文章推荐
- C++ primer 第五版 中文版 练习 10.34 个人code
- C++ primer 第五版 中文版 练习 11.3 个人code
- C++ primer 第五版 中文版 11.3.1 节练习 个人code
- C++ primer(第五版) 练习 3.31 个人code
- C++ primer(第五版) 练习 6.10 个人code
- C++ primer 第五版 中文版 练习 10.15 个人code
- C++ primer 第五版 中文版 练习 10.35 个人code
- C++ primer 第五版 中文版 练习 11.4 个人code
- C++ primer 第五版 中文版 练习 11.32 个人code
- C++ Primer 第五版 中文版 练习 12.27 个人code
- C++ Primer 第五版 中文版 练习 14.3 个人code
- C++ primer(第五版) 练习 3.17 个人code
- C++ primer(第五版) 练习 5.3 个人code
- C++ primer(第五版) 练习 5.17 个人code
- C++ primer(第五版) 练习 6.21 个人 code
- C++ primer(第五版) 练习 6.47 个人 code
- C++ primer(第五版) 练习 7.2 个人 code
- C++ primer(第五版) 练习 7.15 个人 code
- C++ primer 第五版 中文版 练习 11.33 个人code
- C++ primer 第五版 中文版 练习 12.2 个人code