C 语言程序设计期末考试综合练习

发布 2021-04-21 12:19:28 阅读 8767

2018春网院c++语言程序设计期末考试综合练习一。

一选择题。1. 编写c++程序一般需经过的几个步骤依次是。

a. 编辑、调试、编译、连接 b. 编译、编辑、连接、运行。

c. 编译、调试、编辑、连接 d. 编辑、编译、连接、运行。

2在c++语言中,char型数据在内存中的存储形式是。

a. 反码b.补码 c. ascii码 d.原码。

3.设有定义 int a;float f;double i; 则10+’a’+i*f值的数据类型是。

b. doublec. float d.不确定。

4.设char ch; 以下正确的赋值语句是。

a)ch=’583b) ch=’$c)ch=’\08d) ch=’\xfa’;

5 在int a[5]=;中,数组元素a[1]的值是。

a)1b)0c)3d)5

6.下列表示引用的语句中是正确的。

已知:int m=10;

a)int &x=m; b)int &y=10; c)int &x d)float &t=&m;

7. 决定c++语言中函数的返回值类型的是()

a. return语句中的表达式类型。

b. 调用该函数时系统随机产生的类型。

c. 调用该函数时的主调用函数类型。

d. 在定义该函数时所指定的数据类型。

8.设int m=1,n=2, 则++m==n的结果是。

a)0 b)1 c)2 d)3

9. 假定一个类的构造函数为a(int aa,int bb),则执行a x(4,5);语句后,和的值分别为。

a. 4和5 b. 4和20 c. 4和24 d. 20和5

10.已知:p是一个指向类a数据成员m的指针,a1是类a的一个对象。如果要给m赋值为。

5,__是正确的。

p=5d.*

11.在int b[3]=,中,数组元素a[2][2]的值是。

a)0b)5c)6d)2

12.指针可以用来表示数组元素,下列表示中是错误的。

已知:int a[3][7];

a)*(a+1)[5] b)*(a+3) c)*(a+1d)*(a[0][0]+2)

13. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()

a. 类 b. 对象 c. 函数体 d. 数据块。

14.在int a=3,*p=&a中,*p的值是。

a)变量a的地址值 b)无意义 c) 变量p的地址值 d)3

15.已知f1(int)是类a的公有成员函数,p是指向成员函数f1()的指针,采用___是正确的。

16.假定myclass为一个类,则执行myclass a,b(2),*p; 语句时,自动调用该类构造函数_[4]_次。

a)2 b)3 c)4 d)5

17.在c++中,数据封装要解决的问题是___

a)数据的规范化 b)便于数据转换。

c)避免数据丢失 d)防止不同模块之间数据的非法访问。

18.一个类的友元函数或友元类能够通过成员操作符访问该类的___

a)私有成员 b)保护成员 c)公用成员 d)所有成员。

19.已知一个类a,__是指向类a成员函数的指针。假设类有三个公有成员:void

f1(int),void f2(int)和int a。

*pa::*pc=&a::a

a::*pa

*pp20.运算符->*的功能是___

a.用来表示指向对象指针对指向类成员指针的操作。

b.用来表示对象对指向类成员指针的操作。

c.用来表示指向对象指针对类成员的操作。

d.用来表示对象类成员的操作。

21.__不是面向对象系统所包含的要素。

a)重载 b)对象 c)类 d)继承。

22.假定myclass为一个类,则该类的拷贝初始化构造函数的声明语句为___

a)myclass&(myclass x); b)myclass(myclass x)

c)myclass(myclass& x); d)myclass(myclass *x)

23.已知:类a中一个成员函数说明如下:void set(a & a);

其中,a & a的含义是___

a.指向类a的指针为a

b.将a的地址值赋给变量set

c.a是类a的对象引用,用来作函数set()的形参。

d.变量a与a按位相与作为函数set()的参数。

24.下面对静态数据成员的描述中,正确的是___

a)静态数据成员是类的所有对象共享的数据。

b)类的每个对象都有自己的静态数据成员。

c)类的不同对象有不同的静态数据成员值。

d)静态数据成员不能通过类的对象调用。

25.下列关于对象数组的描述中,__是错误的。

a. 对象数组的下标是从0开始的。

b.对象数组的数组名是一个常量指针。

c.对象数组的每个元素是同一个类的对象。

d.对象数组只能赋初值,而不能在定义后赋值。

26.对类的构造函数和析构函数描述正确的是___

a)构造函数可以重载,析构函数不能重载。

b)构造函数不能重载,析构函数可以重载。

c)构造函数可以重载,析构函数也可以重载。

d)构造函数不能重载,析构函数也不能重载。

27.类的析构函数的作用是___

a)一般成员函数 b)类的初始化 c)对象的初始化 d)删除对象。

28.为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问。

权限定义为___

a)public b)protected c)private d)static

29.类myclass的定义如下:

class myclass

public:

myclass()

setvariable(int i)

private:

int value;

则对下列语句序列正确的描述是___

myclass *p,my; p=&my;

a)语句p=&my;是把对象my赋值给指针变量p

b)语句myclass *p,my;会调用两次类myclass的构造函数。

c)对语句 *的调用是正确的。

d)语句p->setvariable(5)与语句等价。

30.对于拷贝构造函数,正确的描述是___

a)在c++语言中,如果不自定义类的拷贝构造函数,则每个类都有默认的拷贝构造函数。

b)必须为每个类定义拷贝构造函数。

c)如果要使用拷贝构造函数,则必须在类中先定义。

d)当定义了类的构造函数时,如果要使用拷贝构造函数,则必须定义拷贝构造函数。

31.类myclass的定义如下:

class myclass

public:

myclass( )

myclass(int i)

int* value;

若要对 value赋值, 则下面语句正确的是:

a) myclass my; =1000;

b) myclass my; *1000;

c) myclass my; my.*value = 1000;

d) myclass my(lo);

32.下面对于友元函数描述正确的是___

a)友元函数的实现必须在类的内部定义。

b)友元函数是类的成员函数。

c)友元函数破坏了类的封装性和隐藏性。

d)友元函数不能访问类的私有成员。

33.对于下面定义的类myclass,在函数f()中将对象成员n的值修改为50的语句应该。

是___class myclass

public:

myclass(int x)

void setnum(int nl)

private:

int n;

int f( )

myclass *ptr = new myclass(45);

a) myclass(50) b) setnum(50) c) ptr->setnum(50) d) ptr->n = 50

34.下面是类myclass的定义,对定义中语句描述正确的是___

class myclass

public:

void myclass(int a) {x = a

int f(int a, int b

x=a;y=b;

int f(int a, int b, int c = o

x=a;y=b;

z=c;

C语言程序设计期末考试说明

c语言程序设计 期末考试说明。1.所有c语言程序设计内容全部列为考试内容,但类似于栈 链表等数据结构方面的内容及排序 查找等算法本身不列入考试内容,同时问题求解本身也不列为考试内容,但考试中可能会涉及问题求解 排序 查找等算法,此时会以流程图或伪 的形式给出问题求解过程或算法的描述,请同学们一定要熟...

C语言程序设计期末考试试题

一 单项选择题 30分 1.下列不属于算法应该具有的特性是 a.确定性 b.有穷性 c.可行性 d.有零个或者多个输入。2.以下不正确c语言标识符是 b.abc c.bc 3.计算机能直接执行的程序是 a.源程序 b.目标程序 c.汇编程序 d.可执行程序。4.以下运算符优先级最高的是 a.b.c....

C语言程序设计期末考试试卷

学号 姓名 分数 一 选择题 1 14题,每题1分 15 36题,每题2分。共58分 1 以下非法的赋值语句是。a n i 2,i b j c i 1 d x j 0 2 设a和b均为double型变量,且a 5.5 b 2.5,则表达式 int a b b的值是。a 6.500000 b 6 c ...