《C++ Primer》第五版课后习题解答_第一章(1)(01-11)

系统环境: windows 10 1703

编译环境:Visual studio 2017


1.1 

int main()
{
    return 0;
}

在cmd命令行窗口中运行无结果。


1.2 

int main()
{
    return -1;
}
在cmd命令行窗口中运行无结果


1.3

#include <iostream>

int main()
{
    std::cout << "Hello World" << std::endl;
    return 0;
}

1.4

#include <iostream>

int main()
{
    std::cout << "Enter two integers:" << std::endl;
    int v1 = 0, v2 = 0;
    std::cin >> v1 >> v2;
    std::cout << "The product of " << v1 << " and " << v2 << " is " << v1*v2 << std::endl;
    return 0;
}
写这道题的时候被bug困住了,检查很多遍才发现,是因为 std::cin 的结尾不需要添加 std::endl 。


1.5

#include <iostream>

int main()
{
    std::cout << "Enter two integers:";
    std::cout << std::endl;
    int v1 = 0, v2 = 0;
    std::cin >> v1 >> v2;
    std::cout << "The product of ";
    std::cout << v1;
    std::cout << " and ";
    std::cout << v2;
    std::cout << " is ";
    std::cout << v1*v2;
    std::cout << std::endl;
    return 0;
}


1.6

不合法。程序目的是输出。第二行和第三行的句尾各多了一个分号。

      修正方法:1. 在第二行第三行之前各增加 std::cout 

2. 删除第二行第三行句尾的分号。

1.7

#include <iostream>

int main()
{
    /*std::cout << "Enter two integers:";
    *std::cout /*<< std8*/::endl;
    *int v1 = 0, v2 = 0;
    *std::cin >> v1 >> v2;
    *std::cout << "The product of ";
    *return 0;
    */
}

错误信息为



1.8

1. 正确,输出 /*

2. 正确,输出 */

3. 错误。 可修正为:

std::cout << /* "*/" */";
4. 正确,输出 /*


1.9

#include <iostream>

int main()
{
    int sum = 0, i = 50;
    while (i <= 100) {
        sum += i;
        ++i;
    }
    std::cout << "The sum of 50 to 100 inclusive is: "<< sum << std::endl;
    return 0;
}

1.10

#include <iostream>

int main()
{
    int i = 10;
    while (i >= 0) {
        std::cout << i << std::endl;
        --i;
    }
    return 0;
}

1.11

#include <iostream>

int main()
{
    std::cout << "Enter two integers:" << std::endl;
    int i1 = 0, i2 = 0;
    std::cin >> i1 >> i2;
    //比较 i1 和 i2 的大小,若 i1 大于 i2, 则交换二者数值。
    if (i1 > i2) {
        i1 = i1 + i2;
        i2 = i1 - i2;
        i1 = i1 - i2;
    }
    while (i1 <= i2) {
        std::cout << i1 << std::endl;
        ++i1;
    }
    
    return 0;
}


posted @ 2017-08-16 16:22  Adam_fei  阅读(126)  评论(0编辑  收藏  举报