C++ Primer Plus(第六版)第五章复习题答案

1. 入口条件循环和出口条件循环之间的区别是什么?各种C++循环分别属于其中的哪一种?
输入条件循环在进入输入循环体之前将评估测试表达式。如果条件最初为false,则循环不会执行其循环体。退出条件循环在处理循环体之后评估测试表达式。因此,即使测试表达式最初为false,循环也将执行一次。For和while循环都是输入条件循环,而do while循环是退出条件循环。

2. 如果下面的代码片段是有效程序的组成部分,它将打印什么内容?

int I;
for (i=0;i<5;i++)
cout<<I;
cout<<endl;

01234

3. 如果下面的代码片段是有效程序的组成部分,它将打印什么内容?

int j;
for (j=0;j<11;j+=3)
cout<<j;
cout<<endl<<j<<endl;

0369
12

4. 如果下面的代码片段是有效程序的组成部分,它将打印什么内容?

int j=5;
while(++j<9)
cout<<j++<<endl;

6
8

5. 如果下面的代码片段是有效程序的组成部分,它将打印什么内容?

int k=8;
do
cout<<” k = ”<<k<<endl;
while(k++<5);

k = 8

6. 编写一个打印1、2、4、8、16、32、64的for循环,每轮循环都将计数变量的值乘以2.

for (int num=1; num<=64; num*=2)
    cout<<num<<” ”;

7. 如何在循环体中包括多条语句?
答:将语句放在一个大括号中将形成一个符合语句或代码块。

8. 下面的语句是否有效?如果无效,原因是什么?如果有效,它将完成什么工作?

int x = (1,024);

下面的语句又如何呢?

int y;
y = 1,024;

第一条语句是有效的。表达式1,024是由两个表达式组成——1和024,用逗号运算符连接。值为右侧表达式的值。这是024,八进制为20,因此声明将值20赋给X。第二个语句也是有效的。然而,运算符优先级将导致它判定成这样:(y=1),024;也就是说,左侧表达式将y设置为1,整个表达式的值(没有使用)为024或20(八进制)。

9. 在查看输入方面,cin>>ch同cin.get(ch)和ch=cin.get()有什么不同?
cin>>ch将跳过空格、换行符和制表符,其他两种格式将读取这些字符。

猜你喜欢

转载自blog.csdn.net/wyl1813240346/article/details/80260640
今日推荐