《C++ Primer Plus(第六版)》(7)(第五章 循环和关系表达式 答案)
来源:互联网 发布:matebook x ubuntu 编辑:程序博客网 时间:2024/06/04 18:45
5.8 复习题
1.入口条件就是在进入循环的时候就检测,出口条件是先进入循环,再检测,至少可以执行一次循环。
for、while属于入口条件检测,do while属于出口条件检测。
2.
01234
int i;for (i = 0; i < 5; i++)cout << i;cout << endl;
3.
0369
12
int j;for (j = 0; j < 11; j += 3)cout << j;cout << endl << j << endl;
4.
6
8
int j = 5;while (++j < 9){ cout << j++ << endl;}
5.
k = 8
int k = 8;docout << "k = " << k << endl;while (k++ < 5);
6.
for (int i = 1; i <= 64; i *= 2){cout << i<<" ";}cout << endl;
7.使用{},其实就算只有一条语句,也应该使用{},可以是代码更加清晰,而且说不定什么时候需求就要变了,一条语句通常干不了什么的。
8.都有效。
int x = (1, 024);//x为20,()内返回024,0开头是8进制,即是20.int y;y = 1, 024;//y=1,之后024.就没了
9.cin>>ch,跳过空格、换行符、制表符。cin.get(ch) 和 ch = cin.get()可以读取这些字符
5.9编程题
1.
int m = 0;int n = 0;cin >> m;cin >> n;if (m > n) { int t = m; m = n; n = t;}int total = 0;for (int i = m; i <= n; i++) { total += i;}cout << total <<endl;
2.
5.4程序清单
const int ArSize = 16;long long factorials[ArSize];factorials[1] = factorials[0] = 1LL;for (int i = 2; i < ArSize; i++) { factorials[i] = i * factorials[i-1];}for (int i = 0; i < ArSize; i++) { cout << i << " = " << factorials[i] << endl;}修改后:
const int ArSize = 101; array<long double, ArSize> factorials; factorials[1] = factorials[0] = 1; for (int i = 2; i < ArSize; i++) { factorials[i] = i * factorials[i-1]; } for (int i = 0; i < ArSize; i++) { cout << i << " = " << factorials[i] << endl; }结果:
0 = 1
1 = 1
2 = 2
3 = 6
4 = 24
5 = 120
6 = 720
7 = 5040
8 = 40320
9 = 362880
10 = 3.6288e+06
11 = 3.99168e+07
12 = 4.79002e+08
13 = 6.22702e+09
14 = 8.71783e+10
15 = 1.30767e+12
。。。好长
cout << "Please enter:" << endl;int i = -1;int total = 0;while (i != 0) { cin >> i; total += i; cout << "current sum: "<< total << endl;}
4.
const double base = 100;const double interestA = 0.1;const double interestB = 0.05;double moneyA = base;double moneyB = base;int year = 0;while (moneyA >= moneyB) { ++year; moneyA += (base * interestA); moneyB += (moneyB * interestB);}cout << "Year:" << year << " A:" << moneyA << " B:" << moneyB << endl;结果:
Year:27 A:370 B:373.346
string month[12] = { "January","February","March","April", "May","June","July","August", "September","October","November","December"};int total = 0;int thisYearData[12];for (int i = 0; i < 12; ++i) { cout << "Please enter " << month[i] <<"'data:" ; cin >> thisYearData[i]; total += thisYearData[i];}cout << "this year' data: "<< total <<endl;
6.
string month[12] = { "January","February","March","April", "May","June","July","August", "September","October","November","December"};int total = 0;int yearData[3][12];int yearTotal[3];for (int j = 0; j < 3; ++j) { for (int i = 0; i < 12; ++i) { cout << "Please enter the " << j + 1 << " year " << month[i] <<"'data:" ; cin >> yearData[j][i]; total += yearData[j][i]; yearTotal[j] += yearData[j][i]; }}for (int i = 0; i < 3; ++i) { cout << "year:"<< i + 1 << " data:"<< yearTotal[i] << endl;}cout << "all year' data: "<< total <<endl;
7.
struct SCar{ string manufacturer; int year;};int num = 0;cout << "How many cars do you wish to catalog?";cin >> num;cin.get();SCar* carArr = new SCar[num];for (int i = 0; i < num; ++i ) { cout<< "Car #" << i + 1 << ":"<<endl; cout<< "Please enter the make:"; getline(cin, carArr[i].manufacturer); cout << "Please enter the year made:"; cin >> carArr[i].year; cin.get();}cout << "Here is your collection:" << endl;for (int i = 0 ; i < num; ++i) { cout << carArr[i].year << " " << carArr[i].manufacturer << endl;}
8.
char s[20];int count = 0;cout << "Enter words (to stop, type the word done):" <<endl;while (true) { cin >> s; if (0 == strcmp(s, "done")) { break; }else{ ++count; }}cout << "You entered a total of " << count << " words" << endl;
9.
string s;int count = 0;cout << "Enter words (to stop, type the word done):" <<endl;while (true) { cin >> s; if (s == "done") { break; }else{ ++count; }}cout << "You entered a total of " << count << " words" << endl;
10.
cout << "Enter number of rows: ";int n = 0;cin >> n;for (int i = 0; i < n; ++i) { for (int j = 0; j < n ; ++j) { if (j < n - i - 1) { cout << "." ; }else{ cout << "*"; } } cout << endl;}
1 0
- 《C++ Primer Plus(第六版)》(7)(第五章 循环和关系表达式 答案)
- C++ Primer Plus(第六版)—— 第五章 循环和关系表达式 笔记和答案
- 《C++ Primer Plus(第六版)》(6)(第五章 循环和关系表达式 笔记)
- C Primer Plus(第6版)第六章答案
- C Primer Plus(第6版)第五章答案
- C++Primer Plus(第六版) 第十四章 第五题
- c++.primer.plus第五版第六章编程练习答案
- C Primer Plus (第五版) 第六章 编程练习 答案
- c++primer第五版课后练习答案(第六章)
- C++ Primer Plus 第五章 循环和关系表达式
- C Primer Plus (第五版) 编程练习题答案
- C Primer Plus(第六版)第六章编程练习答案。
- 【读书笔记:C++ primer plus 第六版 中文版】第5章 循环和关系表达式
- C++ primer plus(第六版)第五章练习题
- C++ Primer Plus(第六版)--学习杂记(第五章)
- C Primer Plus (第六版)中文版 第十章 编程练习答案
- C Primer Plus (第六版)中文版 第七章 编程练习答案
- C++ Primer Plus第六版 第五章 编程练习答案
- Php抽象类和抽象方法
- mysql sql语句提取截取字段值中的数字字符串,动态截图指定字符串数字
- cin.getline()
- org.apache.commons.dbcp.BasicDataSource连接池配备属性
- 入门训练 Fibonacci数列
- 《C++ Primer Plus(第六版)》(7)(第五章 循环和关系表达式 答案)
- 配置datasource三种方式 数据库连接池 .
- Android图表库MPAndroidChart(三)——双重轴线形图的实现,这次就so easy了
- mfc里setTimer 与Ontimer
- c语言的存储类&作用域&生命周期&链接属性
- 如何让Android横竖屏切换时不销毁当前activity
- React App系列一
- [服务器小笔记]Ubuntu配置numpy等环境
- "Variables debug info not available" Debug出现问题的解决