C++课后习题答案.doc

C++课后习题答案.doc

ID:52053342

大小:277.00 KB

页数:43页

时间:2020-03-22

C++课后习题答案.doc_第1页
C++课后习题答案.doc_第2页
C++课后习题答案.doc_第3页
C++课后习题答案.doc_第4页
C++课后习题答案.doc_第5页
资源描述:

《C++课后习题答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、习题2.1int、long和short类型之间有什么差别?【解答】它们的最小存储空间不同,分别为16位、32位和16位。一般而言,short类型为半个机器字(word)长,int类型为一个机器字长,而long类型为一个或两个机器字长(在32位机器中,int类型和long类型的字长通常是相同的)。因此,它们的表示范围不同。习题2.2unsigned和signed类型有什么差别?【解答】前者为无符号类型,只能表示大于或等于0的数。后者为带符号类型,可以表示正数、负数和0。习题2.3如果在某机器上short类型占16位,那么可以赋给short类型的最大数

2、是什么?unsignedshort类型的最大数又是什么?【解答】若在某机器上short类型占16位,那么可以赋给short类型的最大数是215-1,即32767;而unsignedshort类型的最大数为216-1,即65535。习题2.4当给16位的unsignedshort对象赋值100000时,赋的值是什么?【解答】34464。100000超过了16位的unsignedshort类型的表示范围,编译器对其二进制表示截取低16位,相当于对65536求余(求模,%),得34464。习题2.5float类型和double类型有什么差别?【解答】二者

3、的存储位数不同(一般而言,float类型为32个二进制位,double类型为64个二进制位),因而取值范围不同,精度也不同(float类型只能保证6位有效数字,而double类型至少能保证10位有效数字)。习题2.6要计算抵押贷款的偿还金额,利率、本金和付款额应分别选用哪种类型?解释你选择的理由。【解答】利率可以选择float类型,因为利率通常为百分之几。一般只保留到小数点后两位,所以6位有效数字就足以表示了。本金可以选择long类型,因为本金通常为整数。long类型可表示的最大整数一般为231-1(即2147483647),应该足以表示了。付款额

4、一般为实数,可以选择double类型,因为float类型的6位有效数字可能不足以表示。习题2.7解释下列字面值常量的不同之处。(a)’a’,L’a’,"a",L"a"(b)10,10u,10L,10uL,012,0xC(c)3.14,3.14f,3.14L【解答】(a)’a’,L’a’,"a",L"a"’a’为char型字面值,L’a’为wchar_t型字面值,"a"为字符串字面值,L"a"为宽字符串字面值。(b)10,10u,10L,10uL,012,0xC10为int型字面值,10u为unsigned型字面值,10L为long型字面值,10uL

5、为unsignedlong型字面值,012为八进制表示的int型字面值,0xC为十六进制表示的int型字面值。(c)3.14,3.14f,3.14L3.14为double型字面值,3.14f为float型字面值,3.14L为longdouble型字面值。习题2.8确定下列字面值常量的类型:(a)?10(b)-10u(c)-10.(d)-10e-2【解答】(a)int型(b)unsignedint型(c)double型(d)double型习题2.9下列哪些(如果有)是非法的?(a)"WhogoeswithF145rgus?12"(b)3.14e

6、1L                     (c)"two"L"some"(d)1024f                       (e)3.14UL(f)"multiplelinecomment"【解答】(c)非法。因为字符串字面值与宽字符串字面值的连接是未定义的。(d)非法。因为整数1024后面不能带后缀f。(e)非法。因为浮点字面值不能带后缀U。(f)非法。因为分两行书写的字符串字面值必须在第一行的末尾加上反斜线。习题2.10使用转义字符编写一段程序,输出2M,然后换行。修改程序,输出2,跟着一个制表符,然后是M,最后是换行符。【解答】

7、输出2M、然后换行的程序段://输出"2M"和换行字符std::cout<<"2M"<<’’;修改后的程序段://输出’2’,’t’,’M’和换行字符std::cout<<’2’<<’t’<<’M’<<’’;习题2.11编写程序,要求用户输入两个数??底数(base)和指数(exponent),输出底数的指数次方的结果。【解答】#includeintmain(){   //局部对象   intbase,exponent;   longresult=1;   //读入底数(base)和指数(exponent)   st

8、d::cout<<"Enterbaseandexponent:"<>base

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。