C++primer[习题][第四章][1-10]

  • 4.1

5 + 10 * 20 / 2 = 105

  • 4.2

*vec.begin() //*(vec.begin())

*vec.begin()+1 //(*(vec.begin()))+1

  • 4.3

可以接受,代码效率提高比较难,但是程序的缺陷可以通过努力克服。

  • 4.4

((12 / 3) * 4) + (5 * 15) + ((24 % 4) / 2)

  • 4.5

-30 * 3 + 21 / 5 = -86

-30 + 3 * 21 / 5 = -18

30 / 3 * 21 % 5 = 0

-30 / 3 * 21 % 4 = -2

  • 4.6

x%2!=0 ? “odd” : “even”;

  • 4.7

溢出的意思为数据超过了该种数据类型所能表示的范围。

int x = INT_MAX + 1;

int y = INT_MIN - 1;

double z = pow(10, 50);

  • 4.8

优先级:相等性运算符>逻辑与=逻辑或
运算顺序:先计算相等性运算,逻辑与逻辑或从左到右按顺序计算。

  • 4.9

首先判断cp是否为空指针,如果不是空指针为真,再判断*cp是否为非0,*cp为’H’,故为真。

  • 4.10
#include 
using std::cin;

int main()
{
    int x;
    while (cin >> x && x != 42)
    {
        /*.....*/
    }
    return 0;
}

你可能感兴趣的:(C++primer)