}
1.6通过对1.5题中3个程序的修改,回答下列问题
1.从1.5题中第1题程序的修改中,总结出编程应该注意哪些问题。
答:
C++程序要包含iostraem.h,main()函数前应加类型说明符void。
2.C++程序中所出现的变量是否必须先说明后使用?
在函数体内说明变量时是否都要放在函数体的开头?
答:
C++程序中所出现的变量必须先说明后使用。
在函数体内说明变量时不一定要放在函数体的开头。
3.使用cout和插入符(<<)输出字符串常量时应注意什么?
答:
可输出一个字符串常量,也可输出多个字符串常量。
每输出一个字符串常量要使用一次插入符(<<)。
4.程序中定义过的变量,但没有赋值,也没有默认值,这时能否使用?
答:
不能使用。
因为它的值不确定。
5.一个程序编译通过并已生成执行文件,运行后并获得输出结果,这一结果是否一定正确?
答:
不一定正确。
可能还有算法错。
第2章变量和表达式及数组
练习题2
2.1判断题
√1.C++语言的合法字符集与C语言的完全相同。
×2.标识符规定大小写字母没有区别。
×3.C++程序中,不得使用没有定义或说明的变量。
√4.变量的存储类指出了变量的作用域和寿命。
√5.变量的数据类型指出了变量在内存中存放的字节数。
×6.定义变量时,变量的存储类说明符不得省略。
×7.自动类变量与内部静态类变量的作用域和寿命都是相同的。
×8.自动类变量可以定义在函数体外,这时应加说明符auto。
×9.外部类变量与外部静态类变量的作用域是相同的。
×10.变量被定义后是否有默认值与存储类无关,与数据类型有关。
√11.C++程序中,通常使用const来定义符号常量,定义时必须指出类型。
×12.变量被定义或说明后,它一定具有有意义的值。
×13.字符串常量与字符常量的区别仅表现在定义形式上的不同,一个用双撇号,另一个用单撇号。
×14.所有变量的可见性和存在性都是一致的。
√15.变量在它的作用域内一定是可见的,又是存在的。
√16.C++语言中除了包含C语言的所有运算符外,还规定自身的若干个运算符。
√17.增1和减1运算符以及赋值运算符都具有副作用。
×18.增1和减1运算符不仅可以作用在变量上,也可以作用在表达式上。
×19.关系运算符可以用来比较两个字符的大小,也可以比较两个字符串的大小。
×20.移位运算符在移位操作中,无论左移还是右移,对移出的空位一律补0。
×21.变量的类型高低是指它被存放在内存的地址值大小。
×22.使用sizeof运算符可以求得某种类型和某个变量在内存中占的字节数,不能求得某个表达式的类型在内存中所占的字节数。
√23.在C++语言中,非保值转换应用强制类型转换。
√24.表达式中各操作数计算顺序取决于运算符的优先级和结合性。
√25.在C++程序中,变量值是可以改变的,变量的地址值是不能改变的。
√26.数组中所有元素的类型都是相同的。
×27.定义数组时必须对数组进行初始化。
√28.数组某维的大小可以用常量表达式,不可用变量名。
×29.定义一个数组没有对它进行初始化,则该数组的元素值都是无意义的。
√30.用来给数组进行初始化的初始值表内的数据项的个数必须小于等于数组元素个数。
×31.在定义一个数组时,对其部分元素进行了初始化,没有初始化的元素的值都是无意义的。
√32.数组被初始化时是判越界的。
×33.字符数组就是字符串。
√34.使用printf()函数输出显示字符串时使用格式符%s,输出显示字符时使用%c或%d。
×35.给数组元素赋值时只可用常量表达式。
2.2单选题
1.下列变量名中,非法的是(C)。
A.A25B.My_car
C.My-strD.abc
2.下列常量中,十六进制int型常量是(A)。
A.0x5fB.x2a
C.046D.7a
3.下列常量中,不是字符常量的是(B)。
A.'\n'B."y"
C.'x'D.'\7'
4.在函数体内定义了下述变量a,a的存储类为(D)。
inta;
A.寄存器类B.外部类
C.静态类D.自动类
5.下列关于变量存储类的描述中,错误的是(C)。
A.任何变量定义后都具有一个确定的存储类
B.变量的存储类确定了变量的作用域和寿命
C.定义变量时没有存储类说明符者一律为自动类
D.内部静态类变量和外部静态类变量的存储类说明符都是static
6.下列关于变量数据类型的描述中,错误的是(A)。
A.定义变量时int型数据类型可以省略
B.变量的数据类型可以决定该变量占内存的字节数
C.变量的数据类型是可以被强制的
D.变量的数据类型是有高低之分的
7.长双精度浮点型常量的后缀是(C)。
A.UB.F
C.LD.无
8.下列运算符中,不能用于浮点数操作的是(D)。
A.++B.+
C.*=D.&(双目)
9.下列运算符中,优先级最高的是(A)。
A.*(双目)B.||
C.>>D.%=
10.下列运算符中,优先级最低的是(B)。
A.==B.?
:
C.|D.&&
11.已知:
inta(3);下列表达式中,错误的是(C)。
A.a%2==0B.a--+2
C.(a-2)++D.a>>=2
12.已知:
intb(5),下列表达式中,正确的是(D)。
A.b="a"B.++(b-1)
C.b%2.5D.b=3,b+1,b+2
13.下列关于类型转换的描述中,错误的是(C)。
A.类型转换运算符是(<类型>)
B.类型转换运算符是单目运算符
C.类型转换运算符通常用于保值转换中
D.类型转换运算符作用于表达式左边
14.下列表达式中,其值为0的是(A)。
A.5/10B.!
0
C.2>4?
0:
1D.2&&2||0
15.下列表达式中,其值不为逻辑值的是(A)。
A.