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. 一:Tomcat安装、配置和部署笔记

    Tomcat安装(绿色版安装) 1.将下载的Tomcat解压到指定目录,如:D:\WorkSpaceByJava\DevtTools\Apache-Tomcat-8.0.23 2.Tomcat的目录结 ...

  2. 嵌入式Linux的启动过程

    1.了解 Linux 最初是由瑞典赫尔辛基大学的学生 Linus Torvalds在1991 年开发出来的,之后在 GNU的支持下,Linux 获得了巨大的发展.虽然 Linux 在桌面 PC 机上的 ...

  3. Scan error on column index 1, name “created_at“: unsupported Scan, storing driver.Value type []uint8

    使用gorm,出现以下报错 在连接数据库时加上: parseTime=True db, err = gorm.Open(utils.Db, fmt.Sprintf("%s:%s@(%s:%s ...

  4. MySQL alter table时执行innobackupex全备再看Seconds_Behind_Master

    1.场景描述 早上7:25 接到Report中心同学告警,昨天业务报表数据没有完整跑出来,缺少500位业务员的数据,并且很快定位到,缺少的是huabei_order库上的数据.Report中心的数据是 ...

  5. Spring笔记(1)

    Spring快速入门 开发步骤 导入坐标 <dependency> <groupId>org.springframework</groupId> <artif ...

  6. 1,Spark参数调优

    Spark调优 目录 Spark调优 一.代码规范 1.1 避免创建重复RDD 1.2 尽量复用同一个RDD 1.3 多次使用的RDD要持久化 1.4 使用高性能算子 1.5 好习惯 二.参数调优 资 ...

  7. Kafka内外网访问

    本文介绍了Kafka内外网访问的设置. kafka的两个配置listeners和advertised.listeners listeners kafka监听的网卡的ip,假设你机器上有两张网卡,内网1 ...

  8. vue项目 'node-sass'问题

    Cannot find module 'node-sass' 解决办法: 运行命令:cnpm install node-sass@latest 即可解决,( 网络差的同学可以选择重新下载no-modu ...

  9. 从线上日志统计接口访问量QPS

    这一阵子在面试,连续遇到好几家(大小厂都有)问我的项目线上qps的情况了,说实话,我作为一个大头兵,本来没关注过这个数据,只能含混地给个"大概.也许"的回答. 回来之后,我决定对业 ...

  10. Python小技巧:这17个骚操作你都OK吗?

    导读:Python 是一门非常优美的语言,其简洁易用令人不得不感概人生苦短.本文中带我们回顾了 17 个非常有用的 Python 技巧,例如查找.分割和合并列表等.这 17 个技巧都非常简单,但它们都 ...