1、以下能正确地定义整型变量a、b和c,并为他们赋初值5的语句是____。
- A: int a = b = c = 5;
- B: int a , b , c = 5;
- C: a = 5 , b = 5 , c = 5;
- D: int a = 5 , b = 5 , c = 5;
解析
- 选项A中,变量b、c未定义;
- 选项B中,a、b未赋值;
- 选项C中a、b、c均未定义;
答案:D
2、C语言规定,在一个源程序中,main函数的位置____。
- A:必须在最开始
- B:必须在系统调用的库函数的后面
- C:可以任意
- D:必须在最后
解析
C语言规定,在一个源程序中,main函数的位置可以任意。
答案: C
3、执行语句:for(i=1;i++<4; ),后,变量i的值是___。
解析
注意i++和++i的区别。同样是把i+1,i++返回的是+1前的值,++i返回的是+1后的值。
当i=3时,执行i++后,i变成了4,但i++返回值是3,因此满足条件,循环继续。
当i=4时,执行i++后,i变成了5,而i++返回值是4,跳出循环。
所以最后i是5。
答案:C
4、在一个源文件中定义的外部变量的作用域为____。
- A:本文件的全部范围
- B:本程序的全部范围
- C:本函数的全部范围
- D:定义该变量的位置开始至本文件结束
解析
外部变量可以有同一个工程下任何代码访问。
一个程序的所有源代码是一个工程,一个工程可以包含任意多的源代码文件。
答案: D
5、 执行字符串比较函数strcmp(“abc”,“bca”)的返回结果是_____。
解析
按照ASCII码顺序比较两个数组中的字符串,并由函数返回值返回比较结果。a的ASCII码(97)小于b的ASCII码(98)。
字符串1 = 字符串2,返回值 = 0;
字符串1 > 字符串2,返回值 > 0;
字符串1 < 字符串2,返回值 < 0。
答案:B
6、下列叙述正确的是____。
- A:局部变量都是auto类型
- B:全局变量都是static类型
- C:局部变量都是register类型
- D:全局变量的生命周期比static类型变量的声明周期长
解析
static全局变量和普通全局变量的区别:
- 作用域不同: static全局变量的作用域为定义该变量的源文件,也就是只能被该文件中的函数公用,从而避免在其他源文件中引起错误,称为文件作用域。
- static全局变量在编译时初始化,也就是在main()函数之前初始化并仅能初始化一次。
相同点:
3. 静态存储方式:被放在程序的静态数据存储区(全局可见)中,这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它们与堆变量的区别。而局部变量在栈里分配空间。
总结:全局变量改变为静态变量后是改变了它的作用域,限制了它的使用范围。
答案:D
7、以下选项中能表示合法常量的是____。
- A:整数:1,200
- B:实数:1.5E2.0
- C:字符斜杠:“”
- D:字符串:“\007”
解析
- 选项A中,整型常量中出现了",",所以错误;
- 选项B中,实数的表示形式要求e(E)前必须有数字,e(E)后必须是整数,而"2.0"是实数,不满足要求;
- 选项C中,表示字符斜杠,正确的写法是’\';
- 选项D中,正确地表示了一个字符串常量。
答案:D
8、使用操作符对数据进行格式输出,应包含____文件。
- A:iostream.h
- B:iomanip.h
- C:stdio.h
- D:stdib.h
解析
所有不带形参的操作符都定义在都文件iostream.h中,而带形参的操作符则定义在头文件iomanip.h中,使用时应包含iomanip.h头文件。
答案:B
9、派生类的构造函数的成员初始化列表中,不能包含____。
- A:基类的构造函数
- B:派生类中子对象的初始化
- C:基类的子对象的初始化
- D:派生类中数据成员的初始化
解析
构造函数的主要作用是对数据成员初始化。在设计派生类的构造函数中,不仅要考虑派生类所增加数据成员的初始化,还应考虑基类中构造函数的初始化。子对象是对象中的对象,子对象的初始化是在建立派生类时通过调用派生类构造函数来实现。所以派生类构造函数的任务包括3部分:对基类数据成员初始化;对子对象数据成员初始化;对派生类数据成员初始化。
答案:C
10、有以下定义
int a;
long b;
double x,y;
则以下选项中正确的表达式是:
- A:a%(int)(x-y)
- B:a=x!=y
- C:(a*y)%b
- D:y=x+y=x
解析
- 选项A中,如果x与y的值相等,则取余时就会有除数为0的情况。
- 选项C中,取余的两个数据都应为整数,不能有一方为实型变量,而a*y的结果为double型。
- 选项D中,表达式本身就错误,不能给表达式赋值。
答案:B
学海无涯苦作舟