东大21秋学期《C++程序设计》奥鹏在线平时作业3【奥鹏作业辅导】
东北大学《C++程序设计》在线平时作业3
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 100 分)
1.(14) 若已定义:
int a[ ]={0,1,2,3,4,5,6,7,8,9], *p=a, i;
其中 0≤i≤9, 则对a数组元素不正确的引用上
A.A) a[p-a]
B.B) *(&a[i])
C.C) p[i]
D.D) a[10]
2.对于通过公有继承定义的派生类,若其成员函数可以直接访问基类的某个成员,说明
该基类成员的访问权限是( )。
A.A)公有或私有
B.B)私有
C.C)保护或私有
D.D)公有或保护
泽学网(www.zexuewang.net)更多答案请添加:zexue66
3.建立一个有成员对象的派生类对象时,各构造函数体的执行次序为( )。
A.A)派生类、成员对象类、基类
B.B)成员对象类、基类、派生类
C.C)基类、成员对象类、派生类
D.D)基类、派生类、成员对象类
4.)已知有定义
const int D=5;
int i=1;
double f=0.32;
char c=15;
则下列选项错误的是( )
A.A)++i;
B.B)D--;
C.C)c++;
D.D)--f;
5.(23)在C++语言中,函数返回值的类型最终取决于
A.A)函数定义时在函数首部所说明的函数类型
B.B)return语句中表达式值的类型
C.C)调用函数时主调函数所传递的实参类型
D.D)函数定义时形参的类型
6.(34)以下所列的各函数首部中,正确的是
A.A) void play(var :Integer,var b:Integer)
B.B) void play(int a,b)
C.C) void play(int a,int b)
D.D) Sub play(a as integer,b as integer)
7.(36)有如下程序:
#include <iostream>
#include <cmath>
using namespace std;
int main(int argc, char* argv[])
{
int sum;
for(int i=0; i<6; i+=3)
{
sum=i;
for(int j = i; j<6; j++)sum+=j;
}
cout<<sum<<endl;
return 0;
}
运行时的输出结果是( )。
A.A)3
B.B)10
C.C)12
D.D)15
8.列关于模板的叙述中,错误的是( )。
A.A)调用模版函数时,在一定条件下可以省略模板实参
B.B)可以用 int、double 这样的类型修饰符来声明模版参数
C.C)模板声明中的关键字 class 都可以用关键字 typename 替代
D.D)模板的形参表中可以有多个参数
9.在一个抽象类中,一定包含有( )。
A.A)虚函数
B.B)纯虚函数
C.C)模板函数
D.D)重载函数
10.下列程序段的输出结果是
void fun(int *x, int *y)
{ cout<<*x<<”,”<< *y; *x=3; *y=4;}
main()
{ int x=1,y=2;
fun(&y,&x);
cout<<*x<<”,”<< *y;
}
A.A) 2 1 4 3
B.B) 1 2 1 2
C.C) 1 2 3 4
D.D) 2 1 1 2
11.C++语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言( )
A.A)ASP
B.B)C
C.C)VB
D.D)Java
12.(12)以下程序运行后,输出结果是
main()
{ char ch[2][5]={"693","825"},*p[2];
int i,j,s=0;
for (i=0;i<2;i++) p[i]=ch[i];
for (i=0;i<2;i++)
for (j=0;p[i][j]>='0' && p[i][j]<='9';j+=2)
s=10*s+p[i][j]-'0';
cout<<s;
}
A.A)6385
B.B)22
C.C)33
D.D)693825
13.(16) 下列程序的输出结果是
#include <iostream>
using namespace std;
struct abc
{ int a, b, c; };
int main(int argc, char* argv[])
{
struct abc s[2]={{1,2,3},{4,5,6}}; int t;
t=s[0].a+s[1].b;
cout<<t<<endl;
return 0;
}
A.A) 5
B.B) 6
C.C) 7
D.D) 8
14.(26) 有以下程序
int main(int argc, char* argv[])
{
int i,t[][3]={9,8,7,6,5,4,3,2,1};
for(i=0;i<3;i++)
cout<<t[2-i][i];
return 0;
}
程序执行后的输出结果是
A.A)7 5 3
B.B)3 5 7
C.C)3 6 9
D.D)7 5 1
15.若有以下程序片段:
char str[]="ab\\n\\012\\\\\\"";
cout<<strlen(str);
上面程序片段的输出结果是
A.A)3
B.B)4
C.C)6
D.D)12
16.(32)以下叙述正确的是( )
A.A)函数可以嵌套定义但不能嵌套调用
B.B)函数既可以嵌套调用也可以嵌套定义
C.C)函数既不可以嵌套定义也不可以嵌套调用
D.D)函数可以嵌套调用但不可以嵌套定义
17.(4) 在以下一组运算符中,优先级最高的运算符是
A.A)<=
B.B)=
C.C)%
D.D)&&
18.有以下程序
#include <iostream>
using namespace std;
int fun(int n)
{
if(n==1)return 1;
else return(n+fun(n-1));
}
int main(int argc, char* argv[])
{
int x;
cin>>x;
x=fun(x);
cout<<x<<endl;
return 0;
}
执行程序时,给变量X输入10,程序的输出结果是
A.A)55
B.B)54
C.C)65
D.D)45
19.有如下程序:
#include <iostream>
using namespace std;
class MyBase{
public:
virtual void run(){cout<<1;}
};
class MyClass:public MyBase{
public:
void run(){cout<<2;};
};
int main(int argc, char* argv[])
{
MyClass object;
MyBase& base = object;
base.run();
return 0;
}
输出结果为
A.A)1
B.B)2
C.C)出错
D.D)未知
20.(6) 当a=1,b=3 ,c=5,d=4时,执行下面一段程序后,x的值为
if (a<b)
if(c<d) x=1;
else
if(a<c)
if(b<d) x=2;
else x=3;
else x=6;
else x=7;
A.A) 1
B.B) 2
C.C)) 3
D.D) 6
版权保护: 本文由 奥鹏作业答案-泽学网-专业的奥鹏作业毕业论文辅导网 原创,转载请保留链接: https://www.zexuewang.nethttps://www.zexuewang.net/zaixianzuoye/5915.html