从今天开始在博客里写C++primer的文字。主要以后面的习题作业为主,会有必要的知识点补充。

本人也是菜鸟,可能有不对之处,还望指出。

前期内容可能会比较水。

1.1略

1.2略

1.3

cin和cout分别是istream和ostream的对象。

#include<iostream>
using namespace std;
int main()
{
    cout<<"Hello,world"<<endl;
    ;
}

1.4

#include<iostream>
using namespace std;
int main()
{
    int a,b;
    cin>>a>>b;
    cout<<a*b<<endl;
    ;
}

1.5

#include<iostream>
using namespace std;
int main()
{
    int a,b;
    cin>>a>>b;
    cout<<a<<endl<<b<<endl;
    ;
}

1.6

这段代码当然是不正确的。>>、<<本身是移位运算符,被重载以后才被cin和cout使用。“;”表示语句结束,所以下面第7和8行的代码中,<<缺少了调用了它的对象,这里的写法也不符合移位运算符的用法,所以会报错。

 #include<iostream>
 using namespace std;
 int main()
 {
     ,v2=;
     cout<<"The sum of "<<v1;
         <<" and "<<v2;
         <<" is "<<v1+v2<<endl;
     ;
 }

正确写法是去掉第6和7行的分号。

#include<iostream>
using namespace std;
int main()
{
    ,v2=;
    cout<<"The sum of "<<v1
        <<" and "<<v2
        <<" is "<<v1+v2<<endl;
    ;
}

1.7略

1.8

/* */这样的注释不能嵌套;

//会注释掉从出现以后的一整行

如果是在双引号内,会是这两种注释功能都失效。

#include<iostream>
using namespace std;
int main()
{
    cout<<"/*"<<endl;//输出 /*
    cout<<"*/"<<endl;//输出 */
    cout<</* "*/" */<<endl;//编译错误
    cout<</* "*/"/* "/*" */<<endl;//输出 /* 同第1个
    ;
}

1.9

#include<iostream>
using namespace std;
int main()
{
    ,sum=;
    )
    {
        sum+=i;
        ++i;
    }
    cout<<sum<<endl;
    ;
}

1.10

#include<iostream>
using namespace std;
int main()
{
    ;
    )
    {
        cout<<i<<endl;
        --i;
    }
    ;
}

1.11

#include<iostream>
using namespace std;
int main()
{
    int beg,end;
    cin>>beg>>end;
    for(int i=beg;i<=end;++i)
        cout<<i<<endl;
    ;
}

1.12

将[-100,100]之间的数字相加,最终结果是0

1.13略

1.14

for适用于循环起点和终点比较明确的时候

while适用于终止条件比较复杂的时候

1.15略

1.16

#include<iostream>
using namespace std;
int main()
{
    ;
    while(cin>>val)
        sum+=val;
    cout<<sum<<endl;
    ;
}

1.17

如果全部都相等:number occurs n times

如果没有重复:每个数字都输出 ai occurs 1 times

1.18略

1.19

以下代码将忽略输入顺序的影响。

#include<iostream>
using namespace std;
int main()
{
    int beg,end;
    cin>>beg>>end;
    if(beg>end)
    {
        int temp=beg;
        beg=end;
        end=temp;
    }
    for(int i=beg;i<=end;++i)
        cout<<i<<endl;
    ;
}

《C++primer》v5 第1章 开始 读书笔记 习题答案的更多相关文章

  1. 《C++primer》v5 第7章 类 读书笔记 习题答案

    7.1.7.2.7.3 #include<iostream> #include<cstdio> #include<vector> #include<strin ...

  2. 《C++primer》v5 第6章 函数 读书笔记 习题答案

    6.1 实参是在函数调用处填写的参数.形参是在函数体使用的参数. 实参是形参的初始值. 具体参见:http://blog.163.com/zhengguo_li/blog/static/7030148 ...

  3. 《C++primer》v5 第5章 语句 读书笔记 习题答案

    5.1 空语句只有一个";".如果什么也不想做可以使用空语句. 5.2 用花括号{}括起来的叫块,也叫复合语句.有多条语句作用在同一个作用域时,需要用花括号括起来. 5.3 降低了 ...

  4. 《C++primer》v5 第4章 表达式 读书笔记 习题答案

    4.1 105 4.2 *vec.begin()=*(vec.begin())//先调用点运算符,再解引用 *vec.begin()+1=(*vec.begin())+1//先解引用,再加一 4.3略 ...

  5. 《C++primer》v5 第8章 IO库 读书笔记 习题答案

    8.1.8.2 这一章不咋会啊.. istream &read(istream &is) { int a; auto old_state=is.rdstate(); is.clear( ...

  6. 《C++primer》v5 第3章 字符串、向量和数组 读书笔记 习题答案

    本章问题 1.char *p="hello world";与char p[]="hello world"的问题. 简单说前者是一个指向字符串常量的指针,后者是一 ...

  7. 《C++primer》v5 第2章 变量和基本类型 读书笔记 习题答案

    2.1 int,long long ,short 可表示范围和占用内存空间不同.具体与计算机有关. 无符号类型只能表示0和正数,带符号类型可以表示负数,0,正数. float是单精度,一般占用4个字节 ...

  8. C++primer(第五版)读书笔记&习题解答---CHAPTER 3

    C++标准库类型包括:string,vector和迭代器,其中string是可变长的字符序列,vector存放的是某种给定类型对象的可变长序列,迭代器是string和vector的配套类型,常被用于访 ...

  9. C++ Primer(第五版)读书笔记 & 习题解答 --- Chapter 3

    Chapter 3.1 1. using声明具有如下的形式: using namespace::name; Chapter 3.2 1. C++标准一方面对库类型所提供的操作做了规定,另一方面也对库的 ...

随机推荐

  1. 本地yum库制作及本地安装Docker

    生产环境中,我们总是会遇到服务器无法连接外网的情况,这样,如果想安装某个应用,而这个应用依赖的其他类库又特别多,就很痛苦了.这个时候,就需要自己制作个本地的yum库,进行本地安装.本文将以Docker ...

  2. php + Bootstrap-v3-Typeahead 自动完成组件的使用

    Bootstrap 中的 Typeahead 组件就是通常所说的自动完成 AutoComplete,类似百度.谷歌等搜索提示:输入关键词出现相应的下拉列表数据. 是Bootstrap-3-Typeah ...

  3. transient关键字

    transient关键字的英文意思是:瞬态,由此可见是瞬间的,不可固定的. 会不会与对象的状态等等有关系呢? 网上找了一下资料是跟对象的序列化有关. transient的作用 一个对象只要实现了Ser ...

  4. libevent源码分析(一)

    分析libevent的源代码,我的想法的是先分析各种结构体,struct event_base.struct event,然后是event_base_new函数.event_new函数.event_a ...

  5. [Scrapy] Mac安装Scrapy

    Mac安装Scrapy Mac版本 10.11 El Captain. 前一段想在Mac上用Scrapy,各种问题.有一个不错的工具:Anaconda. 安装Anaconda 下载地址 我还是下pyt ...

  6. IntelliJ IDEA使用(2)——IDEA配置Tomcat

    如果网上流传的方法(即方法2)不能配置成功,点击加号什么都没有的话,请看方法一配置方法. 解决问题:intlellij IDEA配置tomcat点击加号没东西. 方法一:手动添加tomcat插件然后再 ...

  7. 如何修改mysql用户名和密码

    如何修改mysql用户名和密码   以修改mysql的root密码为例修改的三种方法 方法1: 用SET PASSWORD命令 mysql>SET PASSWORD FOR 'root'@'lo ...

  8. redis windows下使用及redis命令

    出自:http://www.cnblogs.com/chenping-987123/archive/2012/01/29/2331079.html Redis 是一个开源,高级的键值对的存储.它经常作 ...

  9. 【转】Vim十大必备插件

    [转]Vim十大必备插件 转自:http://my.oschina.net/zhoukuo/blog/336315 Taglist taglist是一个用于显示定位程序中各种符号的插件,例如宏定义.变 ...

  10. PHP 小方法之 计算两个时间戳之间相差的日时分秒

    if(! function_exists ('timediff') ) { function timediff($begin_time,$end_time){ if($begin_time < ...