C++Primer第五版习题答案第二章变量和基本类型(variablesandbasict精品.pdfVIP

  • 1
  • 0
  • 约1.4万字
  • 约 14页
  • 2023-12-03 发布于河南
  • 举报

C++Primer第五版习题答案第二章变量和基本类型(variablesandbasict精品.pdf

C++Primer第五版习题答案第⼆章变量和基本类型(variablesandbasict。。。 练习2.1 类型 int、long、long long 和 short 的区别是什么?⽆符号类型和带符号类型的区别是什么?float 和 double的区别是什么? C++语⾔规定⼀个int⾄少和⼀个short⼀样⼤,⼀个long⾄少和⼀个int⼀样⼤,⼀个long long⾄少和⼀个long⼀样⼤。每个的最⼩尺⼨分 别为:short,16位;int,16位;long,32位;long long,64位。 除去布尔型和扩展的字符型外,其他整形可以划分为带符号的和⽆符号的两种。带符号类型可以表⽰正数、负数或0,⽆符号类型则仅能表 ⽰⼤于等于0的值。 float最⼩尺⼨为6位有效值,double最⼩尺⼨为10位有效值。 练习2.2 计算按揭贷款时,对于利率、本⾦和付款分别应选择何种数据类型?说明你的理由。 都选⽤double,利率4.5%=0.045,本⾦和付款⾦额都是以元为单位,钱的最⼩⾦额是分,需要精确到⼩数点后两位,所以都选⽤double。 练习2.3 读程序写结果。 unsigned u = 10, u2 = 42 ; std::cout u2 - u std ::endl; std::cout u - u2 std ::endl; int i = 10, i2 = 42 ; std::cout i2 - i std ::endl; std::cout i - i2 std ::endl; std::cout i - u std ::endl; std::cout u - i std ::endl; 32 4294967264 32 -32 0 0 练习2.4 编写程序检查你的估计是否正确,如果不正确,请仔细研读本节直到弄明⽩问题所在。 #include iostream int main() { unsigned int u = 10, u2 = 42 ; std ::cout u - u2 std ::endl; std ::cout u2 - u std ::endl; int i = 10, i2 = 42 ; std ::cout i2 - i std ::endl; std ::cout i - i2 std ::endl; std ::cout i - u std ::endl; std ::cout u - i std ::endl; return 0; } 练习2.5 指出下述字⾯值的数据类型并说明每⼀组内⼏种字⾯值的区别: (a) ‘a’, L’a’, “a”, La (b) 10, 10u, 10L, 10uL, 012, 0xC © 3.14, 3.14f, 3.14L (d) 10, 10u, 10., 10e-2 (a)字符字⾯值,宽字符字⾯值,字符串字⾯值,宽字符串字⾯值; (b)整形字⾯值,⽆符号整形字⾯值,长整形字⾯值,⽆符号长整形字⾯值,⼋进制整形字⾯值,⼗六进制整形字⾯值; (c)浮点型字⾯值,单精度浮点型字⾯值,扩展精度浮点型字⾯值; (d)整形字⾯值,⽆符号整形字⾯值,浮点型字⾯值,浮点型字⾯值。 练习2.6 下⾯两组定义是否有区别,如果有,请叙述之: int month = 9, day = 7; int month = 09, day = 07; (a)⼗进制整形; (b)⼋进制整形,⼋进制总没有09。 练习2.7 下述字⾯值表⽰何种含义?它们各⾃的数据类型是什么? (a) “Who goes with F\145rgus?\012” (b) 3.14e1L © 1024f (d) 3.14L (a)string; (b)long double; ©⾮法,整形字⾯值不可加后缀f; (d)long double。 练习2.8 请利⽤转义序列编写⼀段程序,要求先输出 2M,然后转到新⼀⾏。修改程序使其先输出 2,然后输出制表符,再输出 M,最后转到 新⼀⾏。 #include iostream int main() { std ::cout 2 \115\012; std ::cout 2 \011\115\012; return 0; } 练习2.9

文档评论(0)

1亿VIP精品文档

相关文档