系统环境: windows 10 1703
编译环境:Visual studio 2017
2.1
int 整型 16位
long 长整型 32位
long long 长整型 64位
short 短整型 16位
无符号类型 只能表示大于等于零的数
带符号类型 可以表示正数,负数或0
float 单精度浮点数 6位有效数字
double 双精度浮点数 10位有效数字
2.2
利率:float
本金:float
付款:double
三者都是带小数的,所以需要用浮点数类型,利率和本金的有效数字较少,可用float类型表达,付款需要的有效数字更多,需用double类型表达。
2.3
32
4294967264
32
-32
0
0
2.4
正确
2.5
(a)
'a' 字符字面值
L'a' 宽字符型字面值,类型是wchar_t
"a" 字符串字面值
L"a" 宽字符串字面值
(b)
10 int 型字面值常量
10u unsigned int 型字面值常量
10L long 型字面值常量
10uL unsigned long 型字面值常量
012 八进制字面值常量
0xC 十六进制字面值常量
(c)
3.14 float 型字面值常量
3.14f float 型字面值常量
3.14L long double 型字面值常量
(d)
10 int 型字面值常量
10u unsigned int 型字面值常量
10. double 型字面值常量
10e-2 double 型字面值常量
2.6
有区别 int mouth = 9, day = 7,此时mouth 和 day 是十进制数;
int mouth = 09, day = 07,此时mouth 和 day 是八进制数,且09应写为011(八进制数字只有0~7)
2.7
(a) Who gose with Fergus?\n 字符串字面值
(b) long double 型字面值常量
(c) 非法字符,整数后不能跟f
(d) long double 型字面值常量
2.8
#include <iostream>
#include "Sales_item.h"
int main()
{
std::cout << "2M" << "\n" << std::endl;
std::cout << "2" << "\t" << "M" << "\n" << std::endl;
return 0;
}