《C++ primer plus 英文版 第六版》娓娓道来。这个是上下分册。而且,出版时间是最新的2015年,买回来发现网上的勘误基本都被纠正过来了,极个别错误没有影响到理解,好哎!而且发现遣词造句特别简单,读着也顺畅。
电子版(PDF):
C++ Primer Plus Sixth Edition.pdf密码:910h
C++ Primer.Plus 第6版中文版密码:ihsq
Chpter Review 的解答参考书的 Appendix J
Programming Exercises 主要参考了下边的帖子:
C++-primer-plus(第6版)中文版编程练习答案(完全版).pdf密码:20rn
C++-Primer-Plus(第六版)编程习题解答(不完全版).doc密码:hxzs
charlesdong
下文 Programming Exercises 部分的代码亲自敲过,可运行。环境:macOS 下 Xcode

Chapter Review

  1. They are called functions.
  2. It causes the contents of the iostream file to be substituted for this directive before final compilation.
  3. It makes definitions made in the std namespace available to a program.
  4. cout << "Hello, world" << endl; or cout << "Hello, world\n";
  5. int cheeses;
  6. cheeses = 32;
  7. cin >> cheeses;
  8. cout << "We have " << cheeses << " varieties of cheese\n";
  9. The function froop() expects to be called with one argument, which will be type double, and that the function will return a type int value. For instance, it could be used as follows:
    int gval = froop(3.14159);
    The function rattle() has no return value and expects an int argument. For instance, it could be used as follows:
    rattle(37);
    The function prune() returns an int and expects to be used without an argument. For instance, it could be used as follows:
    int residue = prune();
  10. You don't have to use return in a function when the function has the return type void. However, you can use it if you don't give a return value:
    return;
  11. The likely cause it that the function loses a statement using namespace std; to declare a directive of output.
    place using namespace std; above the main() function;
    place using std::cout; in the main() function;
    type as following: using std::cout << "Please enter your PIN: " << std::endl;

Programming Exercises

1

#include <iostream>

int main()
{
    using namespace std;

    cout << "Name: NaRiSu;\n"
         << "Address: BeiJing;" << endl;

    return 0;
}

2

#include <iostream>

int main()
{
    using namespace std;

    int furlong;
    cin >> furlong;
    cout << furlong << " furlong(s) = "
         << 220 * furlong << " yard(s)" << endl;

    return 0;
}

3

#include <iostream>
void f1();
void f2();

using namespace std;

int main()
{
    f1();
    f1();
    f2();
    f2();

    return 0;
}

void f1()
{
    cout << "Three blind mice" << endl;
}

void f2()
{
    cout << "See how they run\n"; // 也可以用f1()函数中的endl形式。

    return; // void f2()表明无返回值,故可以这样写;也可以如f1()不写return语句。
}

4

#include <iostream>

int main()
{
    using namespace std;

    cout << "Enter your age: ";
    int age;
    cin >> age;
    cout << "Your age in months is " << 12 * age << "." << endl;

    return 0;
}

5

#include <iostream>
double fahrenheit(double);

int main()
{
    using namespace std;

    cout << "Please enter a Celsius value: ";
    int celsius;
    cin >> celsius;
    cout << celsius << " degrees Celsius is "
         << fahrenheit(celsius) << " degrees Fahrenheit." << endl;

    return 0;
}

double fahrenheit(double n)
{
    return 1.8 * n + 32.0;
}

6

#include <iostream>
double astronomical(double);

int main()
{
    using namespace std;

    cout << "Enter the number of light years: ";
    double light;
    cin >> light;
    cout << light << " light years = "
         << astronomical(light) << " astronomical units." << endl;

    return 0;
}

double astronomical(double n)
{
    return 63240 * n;
}

7

#include <iostream>
void f(int, int);

int main()
{
    using namespace std;

    cout << "Enter the number of hours: ";
    int hour;
    cin >> hour;
    cout << "Enter the number of minutes: ";
    int minute;
    cin >> minute;
    f(hour, minute);

    return 0;
}

void f(int h, int m)
{
    using namespace std;

    cout << "Time: " << h << " : " << m << endl;
}

c++-pimer-plus-6th-chapter02的更多相关文章

  1. The 6th tip of DB Query Analyzer

      The 6th tip of DB Query Analyzer MA Gen feng (Guangdong Unitoll Services incorporated, Guangzhou ...

  2. [转载]ECMA-262 6th Edition / Draft August 24, 2014 Draft ECMAScript Language Specification

    http://people.mozilla.org/~jorendorff/es6-draft.html#sec-23.4 Draft Report Errors and Issues at: htt ...

  3. Chapter02 Java概述

    Chapter02 Java概述 目录 Chapter02 Java概述 2.1 什么是程序 程序: 2.2 Java的重要特点 2.3 Java 运行机制及运行过程 2.3.1 Java 语言的特点 ...

  4. ​Si2151/41 6th Generation Silicon TV Tuner ICs

    ​ The Si2151/41 are the industry's most advanced silicon TV tuner ICs supporting all worldwide terre ...

  5. SQL --Chapter02 查询基础

    SELECT 语句基础 SELECT <列名>,….. FROM <表名>; 查询全部列: SELECT * FROM <表名>; 使用AS关键字为列设置别名,设定 ...

  6. Codeforces Round #361 Jul.6th B题 ☺译

    最近迈克忙着考前复习,他希望通过出门浮躁来冷静一下.迈克所在的城市包含N个可以浮躁的地方,分别编号为1..N.通常迈克在家也很浮躁,所以说他家属于可以浮躁的地方并且编号为1.迈克从家出发,去一些可以浮 ...

  7. Codeforces Round #361 Jul.6th A题 ☺译

    A.迈克和手机 当迈克在沙滩上游泳的时候,他意外的把他的手机扔进了水里.不过你甭担心因为他立马买了个便宜些的代替品,这个代替品是老款九键键盘,这个键盘只有十个等大的数字按键,按以下方式排列: 1 2 ...

  8. October 6th 2016 Week 41st Thursday

    The outer world you see is a reflection of your inner self. 你拥有什么样的内心,你就会看到什么样的世界. And we eventually ...

  9. September 6th 2016 Week 37th Tuesday

    I only wish to face the sea, with spring flowers blossoming. 我只愿面朝大海,春暖花开. That scenery is beautiful ...

  10. July 6th, Week 28th Wednesday, 2016

    Diligence is the mother of good fortune. 勤勉是好运之母. The mother of good fortune can be diligence, conti ...

随机推荐

  1. Base64编码为什么会使数据量变大?

    当把byte[]通过Convert.ToBase64String转换成Base64编码字符串时数据量明显变大,为何呢?这里就得先探究一下什么是Base64编码. Base64编码的思想是是采用64个基 ...

  2. ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 42. Created with MySQL 50560, now running 50725. Please use mysql_upgrade to fix this error.

    centos7.5 登入mysql,进行授权报错 问题: mysql> grant all privileges on *.* to 'lvhanzhi'@'%' identified by ' ...

  3. Maven的安装与本地仓库的搭建

    Maven的安装 1.首先去官网下载maven.http://maven.apache.org/download.cgi 2.解压下载后的压缩包.例如到D盘.D:\apache-maven-3.5.0 ...

  4. Nand flash code

    (1)流水灯   1>我们来看原理图                                2>datasheet                             3> ...

  5. HDU 6096 String(AC自动机+树状数组)

    题意 给定 \(n\) 个单词,\(q\) 个询问,每个询问包含两个串 \(s_1,s_2\),询问有多少个单词以 \(s_1\) 为前缀, \(s_2\) 为后缀,前后缀不能重叠. \(1 \leq ...

  6. Bytom猜谜合约使用指南

    准备工作: 1.安装全节点钱包V1.0.5以上并同步完成: 2.已经发行一种资产,发行资产的方法具体见文章<如何在Bytom上发布资产?> 3.准备好一些BTM作为手续费: 设置谜语(锁定 ...

  7. Redis架构设计

    高可用Redis服务架构分析与搭建 各种web开发业务中最为常用的key-value数据库了 应用: 在业务中用其存储用户登陆态(Session存储),加速一些热数据的查询(相比较mysql而言,速度 ...

  8. NLog——ElasticSearch——Kibana

    Nlog.elasticsearch.Kibana以及logstash在项目中的应用(一) Nlog.elasticsearch.Kibana以及logstash在项目中的应用(二) ASP.NET ...

  9. Linux 下终端 C 语言控制光标的技巧

    // 清除屏幕 #define CLEAR() printf("\033[2J") // 上移光标 #define MOVEUP(x) printf("\033[%dA& ...

  10. 如何判断一个单向链表是否为回文链表(Palindrome Linked List)

    题目:给定一个单向链表,判断它是不是回文链表(即从前往后读和从后往前读是一样的).原题见下图,还要求了O(n)的时间复杂度O(1)的空间复杂度. 我的思考: 1,一看到这个题目,大脑马上想到的解决方案 ...