大一C++考试题.docx
- 文档编号:5965816
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:20
- 大小:53.91KB
大一C++考试题.docx
《大一C++考试题.docx》由会员分享,可在线阅读,更多相关《大一C++考试题.docx(20页珍藏版)》请在冰豆网上搜索。
大一C++考试题
北京林业大学2009--2010学年第1学期考试试卷
课程名称:
面向对象程序设计语言A(A)课程所在学院:
信息学院
考试班级学号姓名成绩
试卷说明:
1.本次考试为闭卷考试。
本试卷共计12页,共4大部分,请勿漏答;
2.考试时间为120分钟,请掌握好答题时间;
3.答题之前,请将试卷和答题纸上的考试班级、学号、姓名填写清楚;
4.本试卷所有试题答案写在试卷上;
5.答题完毕,请将试卷和答题纸正面向外对叠交回,不得带出考场;
6.考试中心提示:
请你遵守考场纪律,参与公平竞争!
题号
一
二
三
四
总分
得分
一.
得分
评卷人
单项选择题(每小题2分,共32分)
说明:
在每小题列出一组答案,分别标识为A~D,在四个选项中,只有一个是符合题目要求的,请将其代码填在下列的表格题号对应的空白内。
错选或未选均无分。
题号
1
2
3
4
5
6
7
8
答题
代码
题号
9
10
11
12
13
14
15
16
答题
代码
[1]
for语句能够被改写成()语句。
(A)
while
(B)
if
(C)
try
(D)
switch
[2]
语句:
for(intx=0,y=0;!
x&&y<=5;y++,x=1-x);执行循环的次数是()。
(A)
无数
(B)
6
(C)
5
(D)
1
[3]
下面数组定义合法的是()。
(A)
ints[]="string";
(B)
ints[5]={0,1,2,3,4,5};
(C)
chars="string";
(D)
chars[]={0,1,2,3,4,5};
[4]
执行下面语句:
inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
则数值为8的表达式是()。
(A)
*p+=7
(B)
*(p+8)
(C)
*p+8
(D)
p+7
[5]
假定E为一个类,则执行“Ee1(3),e2[6],*pe[8];”语句时,自动调用该类构造函数的次数为()。
(A)
17
(B)
6
(C)
7
(D)
9
[6]
typedefstruct
{
intscore;
intyear;
}data;
datad,*p=&d;
上面语句执行后,与d.score值相等为()。
(A)
p->d.score
(B)
(*p).score
(C)
(*p).d
(D)
p->data
[7]
假定有以下变量定义:
intk=8,x=21;则能使x的值为5的表达式是()。
(A)
x%=(k%=5)
(B)
x%=(k-k%5)
(C)
(x%=k)-(k%=5)
(D)
x%=k-k%5
[8]
结构体:
structstudent
{charname[10];
intage;
boolsex;
};
占内存字节数为()。
(A)
20
(B)
15
(C)
18
(D)
sizeof(student)
[9]
已知:
inta,*pa=&a;输出指针pa值的十进制表示的方法是()。
(A)
cout< (B) cout<<*pa; (C) cout<<&pa (D) cout<<(longint)pa; [10] 类的析构函数是在什么时间被自动调用的? ()。 (A) 类创建时 (B) 创建对象时 (C) 销毁对象时 (D) 不自动调用 [11] 下面描述中,表达错误的是()。 (A) 公有继承时基类中的public成员在派生类中仍是public的 (B) 公有继承是基类中的private成员在派生类中仍是private的 (C) 公有继承时基类中的protected成员在派生类中仍是protected的 (D) 私有继承时基类中的public成员在派生类中是private的 [12] #include usingnamespacestd; classBase { charc; public: Base(charn): c(n){} ~Base(){cout< }; classDerived: publicBase { charc; public: Derived(charn): Base(n-1),c(n){} ~Derived(){cout< }; intmain(intargc,char*argv[]) { Derived('D'); return0; } 上面程序运行结果为()。 (A) CD (B) DC (C) D (D) C [13] 任何类都至少拥有()构造函数。 (A) 默认 (B) 拷贝 (C) 2个 (D) 赋值 [14] 关于多态,下面那些说法是正确的()。 (A) 多态分静态的(运行时)和动态的(编译时)。 (B) 运行时的多态与类的层次结构无关。 (C) 在基类定义了虚函数后,在派生类中重新定义时必须加关键字virtual。 (D) 仅使用虚函数并不能实现运行时的多态性,还必须采用指针或引用来调用才能真正实现运行时的多态性。 [15] 下列哪一个描述是关于引用调用的()。 (A) 形参是指针,实参是地址值 (B) 形参是引用,实参是变量 (C) 形参和实参都是变量 (D) 形参和实参都是数组名 [16] 已知类Myst有一个只需要一个double型参数的构造函数,且将运算符“-”重载为友元函数。 要使语句序列: Mystx(3.2),y(5.5),z(0.0); z=(x-6.3)-(8.9-y); 能够正常运行,运算符函数operator-应该在类中声明为()。 (A) friendMystoperator-(Myst&,Myst&); (B) friendMystoperator-(Myst,Myst); (C) friendMystoperator-(Myst,Myst&); (D) friendMystoperator-(Myst&,Myst); 二. 得分 评卷人 判断题(每小题1分,共10分) 说明: 请判断下列语句是否正确,如果正确请在下列的表格题号对应的空白内用笔打上√;如果错误请在下列的表格题号对应的空白内用笔打上×。 错打或未打均无分。 题号 1 2 3 4 5 6 7 8 9 10 答题 代码 () [1] 定义数组chars1[]="abc"和chars2[]={'a','b','c'},s1的数组长度小于s2的数组长度。 () [2] C++语言的跳转语句中,continue只能够用在循环语句中,而break可以不用在循环语句中。 () [3] 使用内联函数可节省函数调用与返回时的开销,因此能够提高程序的运行速度。 () [4] 在传值调用中,要求实参和形参的类型完全一致并且个数相等。 () [5] 语句inta(10),&b=a,*p=&a;中,b的值和*p的值是相等的。 () [6] 运算符重载只能够实现成友元函数。 () [7] 任何函数都必须有返回值。 () [8] 定义一个对象时,系统只为该对象的数据成员开辟内存空间,而成员函数是同类对象共享的。 () [9] 类的对象可以是自身类的成员变量。 () [10] 模板类的成员函数若在类外实现,则必须是模板函数。 三. 得分 评卷人 写出程序执行结果(每小题6分,共30分) 阅读以下程序,并写出程序运行结果。 题号 程序输出结果 1 2 3 4 5 [1] #include usingnamespacestd; voidExchange2(chara,charb) { charc; c=a;a=b;b=c; } voidexchange(char*a,charb) { charc; c=*a;*a=b;b=c; } voidexchange(char*a,char*b) { charc; c=*a;*a=*b;*b=c; } voidexchange(char&a,char&b) { charc; c=a;a=b;b=c; } intmain(intargc,char*argv[]) { chara,b; a='A';b='B';Exchange2(a,b);cout< a='A';b='B';exchange(&a,&b);cout< a='A';b='B';exchange(&a,b);cout<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大一 C+ 考试题