}
2.6简单回答下述问题
1.C++语言中注释符的格式如何?
注释信息的功能是什么?
答:
注释符格式有2种:
格式一:
/*<注释信息>*/
格式二:
//<注释信息>
注释信息是用来对程序进行提示和说明的。
2.使用const定义符号常量比使用#define定义符号常量有何优点?
答:
使用const定义符号常量时要指出数据类型,而用#define定义符号常量时不需提出类型,因此前者比后者对类型要求更严格,这样会更安全。
3.内部静态存储类变量有何特点?
答:
内部静态存储类变贯的特点是作用域较小,但寿命很长,这种变量作用域与寿命不一致,因此会出现不可见但又存在的情况。
4.在使用插入符(<<)输出若干个表达式值时,有的表达式中使用的运算符的优先级低于插入符优先级时应该如何处理?
答:
这时需将表达式用括号括起来,己改变其优先级。
5.由多种不同运算符组成的表达式,其类型如何确定?
例如,
inta,b,c;
…
a=b>c?
b:
c;
这是一个条件表达式还是赋值表达式?
答:
表达式类型由优先级低的运算符组成的表达式来确定。
这是一个赋值表达式,因为赋值运算符优先级低于三目运算符。
6.数组元素个数是由什么决定的?
答:
数组元素个数是由维数及其大小来决定的。
一维数组元素个数是该维的大小,二维数组的元素个数是两维大小之积等。
7.数组元素下标有何规定?
答:
C++语言中,数组元素下标从0开始。
8.初始值表中数据项的类型和个数有何规定?
答:
初始值表中数据项的类型应与该变是类型相同,个数应小于或等于被初始化的数组元素的个数。
9.字符数组和字符串有什么关系?
答:
字符数组中可存放字符串,而字符数组不都是存放字符串的。
如果字符数组中有字符串结束符,则说明该字符数存放的是字符串。
10.一个数组中的元素类型是否一定相同?
何时定义的数组元素具有默认值?
答:
数组中元素类型必须相同。
存储类为外部和静态的数组其元素具有默认值。
第3章 语句和预处理
练习题3
3.1判断题
√1.表达式和表达式语句是不同的。
×2.空语句是一种没有用处的语句。
×3.复合语句就是分程序。
×4.条件语句中if子句和else子句都是必须有并且仅有一个。
√5.条件语句中elseif子句可以没有,也可以有多个。
√6.开关语句可实现多路分支。
×7.开关语句的<语句序列>中必须有一个break语句,否则该开关语句便无法退出。
×8.任何循环语句都是至少执行一次循环体。
×9.退出for循环语句必须是for后面括号内的中间一个表达式的值为0。
√10.do-while循环语句至少要执行一次循环体。
×11.循环语句的循环体中可以出现if语句,if语句的if体内不能出现循环语句。
×12.goto语句中所使用的语句标号是一种标识符,它的作用域是文件级的。
√13.break语句和continue语句都可以出现在循环体中,但是它们的作用是不同的。
×14.文件包含命令所能包含的文件类型是不受限制的。
3.2单选题
1.下列关于语句的描述中,错误的是(A)。
A.C++程序中的函数是由若干条语句组成的
B.每条语句都要实现某种操作
C.条件语句是用来实现分支操作的
D.循环语句是用来在一定条件下重复执行某段程序的
2.下列关于条件语句的描述中,错误的是(C)。
A.if语句中最多只能有一个else子句
B.if语句的if体内可以出现开关语句
C.if语句中elseif子句和else子句的顺序是没有限制的
D.if语句中else子句是与它最近的if子句配对的
3.下列关于开关语句的描述中,错误的是(B)。
A.开关语句中,case子句的个数是不受限制的
B.开关语句中,case子句的语句序列中一定要有break语句
C.开关语句中,default子句可以省略
D.开关语句中,右花括号具有退出开关语句的功能
4.下列关于循环语句的描述中,错误的是(A)。
A.while循环语句中<条件>给定的表达式不能为非0的常量,否则便是死循环
B.for循环语句的循环体内可以出现while循环语句、do-while循环语句和for循环语句
C.循环语句的循环体可以是空语句
D.循环语句的循环体内可以出现break语句,也可以出现continue语句
5.已知:
inti(3);下列do-while循环语句的循环次数是(D)。
do{
cout<i--;
}while(i!
=0);
A.0B.3
C.1D.无限
6.下列for循环语句的循环次数是(B)。
for(inti(0),j(5);i=3;i++,j--);
A.3B.无限
C.5D.0
7.下列while循环语句的循环次数是(A)。
while(inti(0))i--;
A.0B.1
C.2D.无限
8.下列程序段执行后,j值是(B)。
for(inti(0),j(0);i<10;i++)
if(i)j++;
A.0B.9
C.10D.无限
9.已知:
typedefcharCH;下列描述中,正确的是(A)。
A.使用CH定义的变量是char型变量
B.使用CH定义的是一个字符常量
C.使用CH定义的变量其类型不确定
D.使用CH定义的是一个字符串
10.下列关于预处理命令的描述中,错误的是(D)。
A.预处理命令最左边的标识符是#
B.预处理命令是在编译前处理的
C.宏定义命令可以定义符号常量
D.文件包含命令只能包含.h文件
3.3填空题
1.表达式语句是一个表达式后边加上分号(;)组成的。
空语句是只有一个分号的语句。
2.复合语句是由两条条或两条条以上的语句加上花括号({})组成的。
3.分程序是一种带有说明语句的复合语句。
4.循环语句的共同特点是都应具有循环体和退出循环的条件。
5.下列程序是求100之内的能被7整除的自然数之和。
3.6简单回答下列问题
1.分程序是复合语句吗?
复合语句与分程序的区别是什么?
答:
分程序是复合语句。
复合语句与分程序的区别在于含有说明语句的复合语句称为分程序。
2.if语句中,else子句的功能是什么?
答:
该子句的功能是当if子句和所有elseif子句的条件都为0时,则执行else子句。
3.在开关语句中,是否每个case子句后面的<语句序列>中都应该有break语句?
答:
通常case子句后面的<语句序列>中都有break语句,根据需要也可以没有break语句。
4.循环语句的循环体中出现的continue语句的作用是什么?
答:
结束本次循环,转到循环头判断是否继续循环。
5.文件包含命令的功能吗?
该命令一定要放在程序首部吗?
答:
该预处理命令是将指定的包含文件内容放在该命令出现的地方。
通常放在程序开头,便于后边语句的使用。
第4章 指针和引用 练习题4
4.1判断题
×1.指针是变量,它具有的值是某个变量或对象的地址值,它还具有一个地址值,这两个地址值是相等的。
√2.指针的类型是它所指向的变量或对象的类型。
×3.定义指针时不可以赋初值。
√4.指针可以赋值,给指针赋值时一定要类型相同,级别一致。
×5.指针可以加上或减去一个int型数,也可以加上一个指针。
√6.两个指针在任何情况下相减都是有意义的。
√7.数组元素可以用下标表示,也可以用指针表示。
×8