东南大学C第二学期期末复习二含答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题:(每题1分,共30分)
1.以下程序的输出结果是—
A) 1 B) 7 C) 9 D) 11
ttincludeO
void fut (int**s, int p[2][3])
{**s=p[ll [1] ; }
void main ()
{static int a[2] [3]=={1, 3, 5, 7, 9, 11};
int *p;
p=new int;
fut (&p, a);
cout<<*p< } 2.执行以下程序后,y的值是,B)_ A) 17 B) 18 C) 10 D) 20 ttincludeO void main () {static int a[] = {2, 4, 6, & 10}; int y=0, x, *p; p二&a[l]; for (x二0;x〈3;x++) y+二* (p+x); cout< } 3.定义一下类: class X { int a ; public: X (int x=0 ) { a二x ; } }; class Y: public X { int b; pub lie : Y ( int x=0 , int y=0 ) : X (y) { b = x ;} }; 在下列选项的说明语句中,存在语法错误的是(C) A. X *pa 二new Y(1 , 2 ) B. X al - Y( 1,3 ) C. X b2 ( 2 , 3 ) ; Y &a2 = b2 ; D. Y b3 ( 10 ) ; X a3 ( b3 ); 4.下列关于虚函数描述中正确的是(B) 。 A.虚函数可以是一个static类型的静态成员 B.虚函数可以是一个非静态成员 C.虚函数实现静态多态性 D.基类中釆用virtual说明一个虚函数后,派生类中定义相同的原型 的虚函数时,可不必加virtual说明 5.若磁盘上己存在某个文本文件,其全路径文件名为:d:\dir\,下列 语句中能以”读文本文件”的方式打开该文件的是(B) °A・辻stream file( "d:\dir\"); B.fstream file( "d:\\dir\\” ); C・ fstream file (ios::in); ( "d:\dir\"); D.ifstream * fi1e=new ifstream( "d:\\dir\\” ); 6.定义如下变量和数组: int i; int x[3][3]={1, 2, 3, 4, 5, 6, 7, 8, 9};则以下语句的输出结果 是(C) 。 for(i=0 ;i<3; i++) cout«x[i] [2-i]; A- 159 B. 147 C. 357 D. 369 7.void g((void*) (int, int, int), int, int)的参数个数是 (A) _____ o A. 3个 B. 5个 C. 1个 D.无法确定 8.现需要对list类对象使用的逻辑运算符“==”重载,以下函数声明 (28)是正确的。 A. 1 ist & list::operator"(const list &a); B.list list::operato(const list &a); C.bool & list::operator二二(const list &a): D.bool list::operator==(const list &a); 9.若有说明:int t [3] [2], *p=t [0];能正确表示t [2] [1]的一组表达 式是_(D)_ A)**(t+2)+l,*(p[0]+5),**t+3 B)**(t+2+l),*p[2][l],**(t[2]+l) C)* (t+2) +1, *p[5], * (t [0] +2) +1 D)*(*(t+2)+l),p[5],*(t[2]+l) 10.若有说明:int t[3] [2],*p=t[01;能正确表示t[0]的一组表达式是 24* _(27)_ 11・若有说明:int t[3] [21;则表达式:&t[O]+l 表示_(B )_ A )第1行的行指针,一级指针 B )第1行的行指针,二级指针 0元素t [0]⑴的地址 D )元素t [1] [0]的地址 12.设有说明:int *p, *q, *t,x=5;运行以下程序段,输出结果是—(C) A) 5随机数 B)随机数5 C)出错 D) 5 5 p 二new int; q 二&x; t 二p ;p 二q ;q 二t; delete p; cout<<*p<<,\t ? «*q«endl : 二、阅读程序题 1.以下程序运行后,输出结果是(1) (2) (3) (4)。(8分) ttinclude <> int f(int a, int b) { if(a>b) return b+a; else cout< p B)**t,*p D)**t+O, *p[0] 4*