当前位置: 移动技术网 > IT编程>开发语言>C/C++ > C++ Primer Plus(第六版)摘选一些习题及答案分享

C++ Primer Plus(第六版)摘选一些习题及答案分享

2018年10月08日  | 移动技术网IT编程  | 我要评论

麦尚购物商城,新恋爱时代下载mp4,醉酒驾车处罚

1. 为什么c++有多种整型?

有多种整数类型,可以根据特定需求选择合适的类型。例如,可以使用short来存储空格,使用long来确保存储容量,也可以寻找可提高特定计算的速度的类型。

2.声明与下述描述相符的变量。

(1)short整型,值为80

(2)unsigned int整型,值为42110

(3)值为3000000000的整数

(1)short a = 80;

(2)unsigned int b = 42110;

(3)unsigned long c = 3000000000;(有符号的long最大值为2147483000)或者long long c = 3000000000;

3. c++提供了什么措施来防止超出整型的范围?

c++没有提供自动防止超出整型限制的功能(当超出范围之后,得到的值是不确定的),可以使用头文件climits来确定限制情况。

4. 33l与33之间有什么区别?

常量33l的类型为long,常量33的类型为int。

5. 下面两条c++语句是否等价?

char grade = 65;

char grade = ‘a’;

这两条语句并不真正等价,虽然对于某些来说,它们是等价的。最重要的是,只有在使用ascii码的系统上,第一条语句才将得分设置为字母a,而第二条语句还可用于使用其他的编码系统。其次,65是一个int常量,而‘a’是一个char常量。

6. 如何使用c++来找出编码88表示的字符?指出至少两种法。

(1)char c= 88; cout << c << endl;

(2)cout.put(char(88));

(3)cout << char(88) << endl;

(4)cout << (char) 88 << endl;

7. 将long值赋给float变量会导致舍入误差,将long值赋给double变量呢?将long long值赋给double变量呢?

这个问题的答案取决于这两个类型的长度。如果long为4个字节,这没有损失。因为最大的long的值为20亿,即有10位数。由于double提供了至少13位有效数字,因而不需要进行任何舍入。long long类型可提供19位有效数字,超过了double保证的13位有效数字。

8. 下列c++表达式的结果分别是什么?

(1)8 * 9 + 2;

(2)6 * 3 / 4;

(3)3 / 4 * 6;

(4)6.0 * 3 / 4;

(5)15 % 4;

(1)74;(2)4;(3)0;(4)4.5;(5)3

9. 假设x1和x2是两个double变量,您要将它们作为整数相加,再将结果赋给一个整型变量。请编写一条完成这项任务的c++语句。如果要将它们作为double值相加并转换为int呢?

int a = int(x1) + int(x2);或者int a = (int) x1 + (int) x2;

int a = int(x1 + x2);或者int a = (int) (x1 + x2);

10. 下面每条语句声明的变量都是什么类型?

(1)auto cars = 15;

(2)auto iou = 150.37f;

(3)auto level =‘b’;

(4)auto crat = u‘/u00002155’;

(5)auto fract = ‘8.25f/2.5’;

(1)int;(2)float;(3)char;(4)char32_t;(5)double

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网