计算机专业面向对象程序设计试1.docx
- 文档编号:6546763
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:9
- 大小:18.98KB
计算机专业面向对象程序设计试1.docx
《计算机专业面向对象程序设计试1.docx》由会员分享,可在线阅读,更多相关《计算机专业面向对象程序设计试1.docx(9页珍藏版)》请在冰豆网上搜索。
计算机专业面向对象程序设计试1
计算机专业面向对象程序设计试题
一、单项选择题(每小题1分,共20分)
1.C++源程序文件的缺省扩展名为(A)。
A.cpp B.exe C.obj D.lik
2.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
3.在下面的字符数组定义中,(D)的语法错误。
A.chara[20]=”abcdefg”; B.chara[]=”x+y=55.”;
C.chara[15]; D.chara[10]=’5’;
4.以下正确的函数原型语句是(A)。
A.doublefun(intx,inty); B.doublefun(intx;inty);
C.doublefun(intx=5,inty); D.doublefun(intx,y);
5.软件产品可被全部或部分重用于新的应用的能力叫做软件的(B)。
A.可维护性 B.可复用性
C.兼容性 D.正确性;
6.在多文件结构的程序中,通常把含有main()函数的文件称为(A)。
A.主文件 B.实现文件 C.程序文件 D.头文件
7.在一个用链表实现的队列类中,假定每个结点包含的值域用elem表示,包含的指针域用next表示,链队的队首指针用elemHead表示,队尾指针用elemTail表示,若链队为空,则进行插入时必须把新的地址赋给(C)。
A.elemHead B.elemTail
C.elemHead和elemTail D.elemHead或elemTail
8.假定AB为一个类,则执行“ABa,b
(2),c[3],*p=&a;”语句时共调用该类无参构造函数的次数为(4)次。
A.5 B.6 C.3 D.4
9.引入友元的主要目的是为了(C)。
A.增强数据的安全性 B.提高程序的可靠性
C.提高程序的效率的灵活性 D.保证类的封装性
10.假定类B是在类A的基础上扩充而得到的,那么就称(B)。
A.类A为基类或父类,类B为超类或子类
B.类A为基类、父类或超类,类B为派生类或子类
C.类A为派生类,类B为基类
D.类A为派生类或子类,类B为基类、父类或超类
二、填空题(每空2分,共20分)
1.由函数原型语句“intfun1(void);”可知,该函数的返回类型为整型,该函数带有0个参数。
2.假定x是一个逻辑量,则x||false的值与x的值 相同 。
3.作为语句桔标号使用的C++保留字case和default只能用于switch 语句的定义体中。
4.对一个二维字符数组a进行初始化的数据表为{“123”,”456”,”789”},则a[1]元素对应的字符串为456。
5.NULL是一个符号常量,通常作为空指针值,它的具体值为‘\0’。
6.内联函数的定义模块与所属的类模块必须放在同一个文件中。
7.一个类的构造函数实现对该类对象进行初始化的功能。
8.假定为类AB定义了一个构造函数“AB(intaa=0):
a(aa){}”,则定义该类的对象时,可以有2种不同的定义格式。
9.重载抽取运算符>>时,其运算符函数的返回值类型应当是istream&。
10.若多个基类及其派生类中都定义了同名的函数成员,要访问一个类中该成员函数时,就需要在函数名前加上类名和类区分符:
:
。
三、程序填充题,对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序后面的标号处。
(每小题5分,共20分)
1.下面程序算出
的值。
#include
voidmain()
{
doublex,p1=1,p2=1,s=0;
inti,j=1;
cout<<"输入x的值:
";
cin>>x;
for(i=1; ⑴ ;i++){
p1*=x;
p2*= ⑵ ;
s+=j*p1/p2;
j= ⑶;
}
cout<
}
⑴i<=10
⑵i
⑶-j
2.假定结点类型的定义为“structNODE{intdata;NODE*next;};”,下面算法是依次输出以L为表头指针的单链表中各结点的值。
voidff(NODE*L)
{
for(⑴;p!
=NULL;⑵)
cout<<⑶<<'';
cout< } ⑴NODE*p=L ⑵p=p->next ⑶p->data 3.一个带类的程序如下: classA{ inta,b; public: A(intaa=0,intbb=0): ⑴{}//分别用bb和bb初始化a和b }; voidmain(){ ⑵;//定义类A的对象x并用5初始化,定义y并用x初始化 ⑶;//定义p指针,指向对象x } ⑴a(aa),b(bb) ⑵Ax(5),y(x) ⑶A*p=&x 4.一个带类的程序如下: classA{ inta,b; public: ⑴ //定义构造函数,使参数aa和bb的默认值为0, //在函数体中用aa初始化a,用bb初始化b }; voidmain(){ A*p1,*p2; ⑵ ;//调用无参构造函数生成由p1指向的动态对象 ⑶ ;//调用带参构造函数生成由p2指向的动态对象, //使a和b成员分别被初始化为4和5 } ⑴A(intaa=0,intbb=0){a=aa;b=bb;} ⑵p1=newA ⑶p2=newA(4,5) 四、理解问答题,写出前三小题的程序运行结果和指出后两小题的程序(或函数)所能实现的功能。 (每小题6分,共30分) 1.#include constintM=20; voidmain() { intc2,c3,c5; c2=c3=c5=0; for(inti=1;i if(i%2==0)c2++; if(i%3==0)c3++; if(i%5==0)c5++; } cout< } 运行结果: 963 2.#include #include classCD{ char*a; intb; public: voidInit(char*aa,intbb) { a=newchar[strlen(aa)+1]; strcpy(a,aa); b=bb; } char*Geta(){returna;} intGetb(){returnb;}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机专业 面向 对象 程序设计