C++语言程序设计-复习资料

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本科《C++语言程序设计》期末复习模拟训练题

一、单选题

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

A. main

B. MAIN

C. name

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

A. 其中一个为假

B. 其中一个为真

C. 它们均为假

D. 它们均为真

3. 逻辑表达式x>0 || y==5的相反表达式为(B)。

A. x<=0 || y!=5

B. x<=0 && y!=5

C. x>0 || y!=5

D. x>0 && y==5

4. 假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大(C)个字节。

A. 1

B. 2

C. 4

D. 8

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

A. 整数

B. 浮点数

C. 字符

D. 逻辑值

6. 循环体至少被执行一次的语句为(C)语句。

A. for循环

B. while循环

C. do循环

D. 任一种循环

7. 在下面的字符数组定义中,(D)语句有语法错误。

A. char a[20]=”abcdefg”;

B. char a[]=”x+y=55.”;

C. char a[15]={’1’,’2’};

D. char a[10]=’5’;

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

A. 数组的首地址

B. 数组中第一个元素的值

C. 数组全部元素的值

D. 数组元素的个数

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

A. 6

B. 7

C. 9

D. 11

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

A. ios::in

B. ios::out

C. ios::in | ios::out

D. 没有

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

A. 整数

B. 浮点数

C. 字符

D. 逻辑

12.设x和y均为bool量,则逻辑表达式x || y为假的条件是(C)。

A. 它们均为真

B. 其中一个为真

C. 它们均为假

D. 其中一个为假

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

A. static

B. const

C. extern

D. inline

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

A. BC(int a, int);

B. BC(int, int);

C. BC(int, int=5);

D. BC(int x; int y);

15. 假定a为一个整型数组名,则元素a[4]与(C)的表示等价。

A. a+4

B. *a+4

C. *(a+4)

D. *(a+16)

16. 下面循环语句执行结束后输出的i值为(B)的值。

for(int i=0; in/2) {cout<

A. n/2

B. n/2+1

C. n-1

D. n

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

A. strlen()

B. strcpy()

C. strcat()

D. strcmp()

18. 预处理命令在程序中都是以(B)字符开头的。

A. *

B. #

C. &

D. @

19. 假定有定义“struct BOOK{char title[40]; float price;};”,则不正确的变量定义语句为(D)。

A. BOOK x;

B. BOOK x={"C++ Programming",27.0};

C. BOOK *x=new BOOK;

D. BOOK x=new BOOK;

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

A. 1

B. n

C. n-1

D. n+1

21. 由C++源程序文件编译而成的目标文件的缺省扩展名为(A)。

A. obj

B. lik

C. exe

D. cpp

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

A. 空格或逗号

B. 逗号或回车

C. 逗号或分号

D. 空格或回车

23. 设x是一个bool型的逻辑量,y的值为10,则表达式 x && y 的值为(C)。

A. 1

B. 0

C. 与x值相同

D. 与x值相反

24. for语句能够被改写为(D)语句。

A. 复合

B. if

C. switch

D. while

25. 在下面的do循环语句中,其循环体被执行的次数为(A)。

int i=0; do i++; while(i*i<10);

A. 4

B. 3

C. 5

D. 2

26. 在下面的一维数组定义中,(C)语句有语法错误。

A. int a[]={1,2,3};

B. int a[10]={0};

C. int a[];

D. int a[5];

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

A. void

B. int

C. new

D. long

28. 下面的函数声明中,(B)是“void BC(int a, int b);”的重载函数。

A. int BC(int x, int y);

B. void BC(int a, char b);

C. float BC(int a, int b, int c=0);

D. int BC(int a, int b=0);

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

A. n

B. n+1

C. n-1

D. n-2

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

A. AB&(AB x);

B. AB(AB x);

C. AB(AB* x);

D. AB(AB&);

31. C++程序的基本功能模块为(D)。

A. 表达式

B. 标识符

C. 语句

D. 函数

32. 存储以下数据,占用存储字节最多的是(A)。

A. 0

B. ’0’

C. ”0”

D. ’\n’

33. 在下面的一维数组定义中,有语法错误的是(C)。

A. int a[]={1,2,3};

B. int a[10]={0};

C. int a[];

D. int a[5];

34. 在下面的语句或语句组中,(B)不正确。

A. int a[5];

B. int M=10; int a[M];

C. int a[]={1,5,10,45};

D. const int N=12; int a[N]; 35.C++语言中的每条简单语句以(B)作为结束符。

A. 逗号

B. 分号

C. 空格

D. 换行符

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

A. 1~19

B. 1~20

C. 0~19

D. 0~20

37. 当处理一个特定的问题时,若循环次数已知,则通常采用(A)来解决。

A. for循环

B. while循环

C. do循环

D. switch语句

38. 在下面循环语句中内层循环体S语句的执行总次数为(D)。

for(int i=0; i

for(int j=i; j

A. n2

B.(n+1)/2

C. n(n-1)/2

D. n(n+1)/2

39. 若函数声明为double* function(), 则该函数的返回值为(B)。

A. 实数型

B. 实数指针型

C. 函数指针型

D. 数组型

40. 假定变量m定义为“int m=7;”,则定义变量p的正确语句为(B)。

A. int p=&m;

B. int *p=&m;

C. int &p=*m;

D. int *p=m;

相关文档
最新文档