C++语言程序设计【1】

1.C语言规定:在一个源程序中,main函数的位置()。

A.必须在最开始
B.必须在系统调用的库函数的后面
C.可以任意
D.必须在最后

2.下面四个选项中,均是合法浮点数的选项是()。

A.+1e+15e-9.403e2
B.-.6012e-4-8e5
C.123e1.2e-.4+2e-1
D.-e3.8e-45.e-0

3.若a=-14,b=3,则条件表达式a<b?a:b+1的值为()。

A.-14
B.-13
C.3
D.4

4.已知:intn,i=1,j=2;执行语句n=i<j?i++:j++;则i和j的值是().

A.1,2
B.1,3
C.2,2
D.2,3

5.为了判断两个字符串s1和s2是否相等,应当使用()

A.if(s1==s2)
B.if(s1=s2)
C.if(strcmp(s1,s2))
D.if(strcmp(s1,s2)==0)

6.以下正确的描述是()。

A.函数的定义可以嵌套,但函数的调用不可以嵌套。
B.函数的定义不可以嵌套,但函数的调用可以嵌套。
C.函数的定义和函数的调用均不可以嵌套。
D.函数的定义和函数的调用均可以嵌套。

7.在C语言中,下面对函数不正确的描述是()。

A.当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。
B.允许函数递归调用。
C.函数形参的作用范围只是局限于所定义的函数内。
D.子函数必须位于主函数之前。

8.如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是()。

A.该变量只在该复合语句中有效
B.该变量在该函数中有效
C.该变量在本程序范围内均有效
D.该变量为非法变量

9.C++可执行文件的默认扩展名为()

A.cpp
B.exe
C.obi
D.1ik

10.程序运行中需要从键盘上输人多于一个数据时,各数据之间应使用()符号作为分隔符。

A.空格或逗号
B.逗号或回车
C.逗号或分号
D.空格或回车

11.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()。

A.main
B.MAIN
C.name
D.functiOn

12.假定一个循环语句为"for(inti=0;i<n;i++)s;”,从循环头部可以看出,循环体s语句将被执行()次。

A.1
B.n一1
C.n
D.n+1

13.假定a为一个短整型(shortint)数组,则元素aL8]的地址比该数组的首地址大()个字节。

A.4
B.8
C.16
D.32

14.求一个字符串长度的标准函数为()。

A.strlen()
B.strcap()
C.strcat()
D.strcmp()

15.若用数组名作为函数调用的实参,传递给对应形参的是该数组的()。

A.首地址
B.第一个元素的值
C.全部元素的值
D.所含元素的个数

16.假定a为一个数组名,则下面的()表达式表示有语法错误。

A.a[i]
B.*a++
C.*a
D.*(a十1)

17.当需要对标准输入/输出设备进行输入/输出操作时,应在文件开始使用#include预处理命令,使之包含()头文件。

A.iostream.h
B.stdlib.h
C.fstream.h
D.strstrea.h

18.下列变量名中,()是合法的。

19.下列各种函数中,()不是类的成员函数。

20.下列()是正确的语句。

21.循环while(inti=0)i--;执行次数是()。

22.设intf(int);和intg(int);是函数f和g的原形,以下将f作为语句调用的是()。

23.设int*p2=&x,*p1=a;p2=*b;则a和b的类型分别是()。

24.设intx;,则经过()后,语句*px=0;可将x值置为0。

25.设voidf1(int*m,long&n);inta;longb;则以下调用合法的是()。

26.以下结构类型可用来构造链表的是()。

27.使用操作符setw对数据进行格式输出时,需要包含()文件。

28.枚举类型中的每个枚举常量的值都是一个。

A.整数
B.浮点数
C.字符
D.逻辑值

29.如果用数值来表示条件则相当于false和true的分别是。

A.0和1
B.0和非0
C.1和非1
D.1和-1

30.要使字符串变量str具有初值“ABCDEFGH”正确的定义语句是。

31.()是定义宏的预处理命令常被用来定义符号常量。

32.当使用ifstream流类定义一个对象并打开一个磁盘文件时文件的隐含打开方式为()。

33.对于有返回值的函数要结束函数运行时必须使用语句。

34.假定AB为一个类则执行“ABa(4)b[5]*p[2]”语句时自动调用该类构造函数的次数为()。

35.下列说法不正确的是()

A.地址从0开始编号因此0是最小的指针值。
B.地址从1开始编号而0则专用于表示空指针。
C.地址0处不能用于存放数据。
D.一个C++字符串的地址就是该字符串第一个字符的地址。

36.结构类型不能够直接进行的操作是()。

37.下列表达式中与下标引用A[k]等效的是()。

A.A+k
B.*A+k
C.*A+K
D.A+*K

38.如果一个函数直接或间接的调用自身这样的调用称为()。

39.#include命令的功能是()。

40.定义函数模板所要用到的第一个修饰符是()。

41.假定p是一指针变量下列指针表达式中正确的是()。

42.设x和y均为bool量,则x&&y为真的条件是()。

A.它们均为真
B.其中一个为真
C.它们均为假
D.其中一个为假

43.下面的哪个保留字不能作为函数的返回类型?()

A.void
B.int
C.new
D.long

44.假定a为一个整型数组名,则元素a[4]的字节地址为()。

A.a+4
B.a+8
C.a+16
D.a+32

45.假定AB为一个类,则执行“ABa(4),b[3],*p[2];”语句时,自动调用该类构造函数的次数为()。

A.3
B.4
C.6
D.9

46.假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为:()。

A.ABoperator+(AB&a,AB&b)
B.ABoperator+(AB&a)
C.operator+(ABa)
D.AB&operator+()

47.C++程序的基本模块为()。

A.表达式
B.标识符
C.语句
D.函数

48.每个C++程序文件的编译错误分为()类。

A.1
B.2
C.3
D.4

49.设有语句“inta=12;a+=a*a;”,则执行结束后,a的值为()。

A.12
B.144
C.156
D.288

50.在下列的常值常量定义中,错误的定义语句是()。

A.constM=10;
B.constintM=20;
C.constcharch;
D.constboolmark=true;

51.枚举类型中的每个枚举常量的值都是一个()。

A.整数
B.浮点数
C.字符
D.逻辑值

52.含随机函数的表达式rand()%20的值在()区间内。

A.1~19
B.1~20
C.0~19
D.0~20

53.当处理特定问题时的循环次数已知时,通常采用()来解决。

A.for循环
B.while循环
C.do循环
D.switch语句

54.将两个字符串连接起来组成一个字符串时,选用()函数。

A.strlen()
B.strcpy()
C.strcat()
D.strcmp()

55.下面的()保留字不能作为函数的返回类型。

A.void
B.int
C.new
D.long

56.下面的函数声明中,“voidBC(inta,intb);”的重载函数是()。

A.intBC(intx,inty);
B.voidBC(inta,charb);
C.floatBC(inta,intb,intc=0);
D.voidBC(inta,intb=0);

57.声明或定义一个内联函数时,必须在函数开始使用保留字()。

A.static
B.const
C.inline
D.extern

58.在下面的函数声明中,()存在着语法错误。

A.intBC(inta,int);
B.intBC(int,int);
C.intBC(int,int=5);
D.intBC(intx;inty);

59.若定义了函数double*function(),则该函数的返回值为()。

A.实数型
B.实数指针型
C.函数指针型
D.数组型

60.下列()的调用方式是引用调用。

A.形参和实参都是变量
B.形参是指针,实参是地址值
C.形参是引用,实参是变量
D.形参是变量,实参是地址值

61.为了提高程序的运行速度,可将不太复杂的函数实现为()。

A.内联函数
B.重载函数
C.递归函数
D.函数模板

62.下面正确的函数原型语句是()。

A.intFunction(voida);
B.voidFunction(int);
C.intFunction(a);
D.voidint(doub

63.函数调用func((exp1,exp2),exp3*exp4-exp5)中所含实参的个数为()个。

A.1
B.2
C.4
D.5

64.若用数组名作为函数调用的实参,传递给形参的是()

A.数组的首地址
B.数组中第一个元素的值
C.数组全部元素的值
D.数组元素的个数

65.文件包含命令中被包含的文件的扩展名()。

A.只能是.h
B.不能是.h
C.可以是.h或.cpp
D.只能是.cpp

66.假定一个结构类型的定义为“structA{inta,b;A*c;};”,则该类型的大小为()字节。

A.8
B.12
C.16
D.20

67.假定有“structBOOK{chartitle[40];floatprice;};BOOK*book;”,则不正确的语句为()。

A.BOOK*x=newbook;
B.BOOKx={"C++Programming",27.0};
C.BOOK*x=newBOOK;
D.BOOK**x=&book

68.假定有“structBOOK{chartitle[40];floatprice;}book;”,则正确的语句为()。

A.BOOK&x=&book;
B.BOOK&x=book;
C.BOOK&x=newBOOK;
D.BOOK&x=BOOK;

69.当类中一个字符指针成员指向具有n个字节的存储空间时,它所能存储字符串的最大长度为()。

A.n
B.n+1
C.n-1
D.n-2

70.为了判断两个字符串s1和s2是否相等,应当使用(  )

A. if (s1==s2) 
B. if(s1=s2) 
C. if (strcmp(s1,s2)) 
D. if (strcmp(s1,s2)==0) 

71.以下正确的描述是(  )。

A. 函数的定义可以嵌套,但函数的调用不可以嵌套。 
B. 函数的定义不可以嵌套,但函数的调用可以嵌套。 
C. 函数的定义和函数的调用均不可以嵌套。 
D. 函数的定义和函数的调用均可以嵌套。

72.若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32);后num的值为(  )。

A. 4 
B. 16 
C. 32 
D. 52 

73.假定AB为一个类,则该类的拷贝构造函数的声明语句为()。

A.AB&(ABx);
B.AB(ABx)
C.AB(AB&);
D.AB(AB*x)

74.对类对象成员的初始化是通过执行构造函数中的()完成的。

A.初始化表
B.函数体
C.参数表
D.基类表

75.假定AB为一个类,则执行“ABa(4),b[3],*p[2];”语句时,自动调用该类构造函数的次数为()。

A.3
B.4
C.6
D.9

76.假定AB为一个类,px为指向该类动态对象数组的指针,该数组长度为n,则执行“delete[]px;”语句时,自动调用该类析构函数的次数为()。

A.0
B.1
C.n
D.n+1

77.对于类中定义的成员,其隐含访问权限为()。

A.public
B.protected
C.private
D.static

78.为了使类中的成员不能被类外的函数通过成员操作符访问,则不应把该成员的访问权限定义为()。

A.public
B.protected
C.private
D.static

79.一个类的友元函数或友元类能够通过成员操作符访问该类的()。

A.私有成员
B.保护成员
C.公用成员
D.所有成员

80.在一个类的定义中,通常要包含有()成员的定义。

A.数据
B.函数
C.数据和函数
D.数据或函数

81.在类作用域中能够通过直接使用该类的()成员名进行访问。

A.私有
B.公用
C.保护
D.任何

82.在关键字public后面定义的成员为类的()成员。

A.私有
B.公用
C.保护
D.任何

83.在关键字private后面定义的成员为类的()成员。

A.私有
B.公用
C.保护
D.任何

84.假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为()。

A.x(a)
B.x[a]
C.x->a
D.x.a

85.C++语言是在_________语言的基础上发展起来的

86.C++语言中的每条基本语句以________作为结束符。

87.C++语言中的每条复合语句以________作为结束符。

88.在C++每个程序行的后面或单独一行的开始使用注释的标记符为__________。

89.单行或多行注释的开始标记符为__________、结束标记符为__________。

90.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以__________标识符开始的预处理命令。

91.C++程序中的所有预处理命令均以______字符开头。

92.一个函数定义由________和________两部分组成。

93.用于输出表达式值的标准输出流对象是________,用于从键盘上为变量输入值的标准输入流对象是________

94.当不需要函数返回任何值时,则应使用________标识符定义函数类型。

95.十进制数25表示成符合C++语言规则的八进制数为________。

96.在c++语言中,操纵符________表示输出一个换行符。

97.假定一个枚举类型的定义为“enumRA{ab,ac,ad,ae};”,则枚举常量ac的值为________。

98.假定x=5,则表达式2+x++的值为________。

99.假定y=10,则表达式++y*3的值为________。

100.表达式float(25)/4的值为________。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值