《C++程序设计》在线平时作业3-00001
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 100 分)
1.(12) 多态性指的是( )
A.A)以任何方式调用一个虚函数
B.B)以任何方式调用一个纯虚函数
C.C)借助于指向对象的基类指针或引用调用一个虚函数
D.D)借助于指向对象的基类指针或引用调用一个纯虚函数
2.(6) 以下程序运行后,输出结果是
#include <iostream>
#include <cmath>
using namespace std;
void fun (char *w ,int n)
{
char t,*s1,*s2;
s1=w; s2=w+n-1;
while(s1<s2)
{
t=*s1++;
*s1=*s2--;
*s2=t;
}
}
int main(int argc, char* argv[])
{
char p[]="1234567";
fun(p,strlen(p));
cout<<p;
return 0;
}
A.A)1234567
B.B)7654321
C.C)1711717
D.D)7177171
3.(38)以下能对二维数组a进行正确初始化的语句是( )
A.A)int a[2][]={{1,0,1},{5,2,3}};
B.B)int a[][3]={{1,2,3},{4,5,6}};
C.C)int a[2][4]={{1,2,3},{4,5},{6}};
D.D)int a[][3]={{1,0,1},{},{1,1}};
4.(6) 在C++语言中,打开一个文件就是将这个文件与一个什么建立关联( )
A.流
B.类
C.结构
D.对象
5.若i、j已定义为int类型,则以下程序段中内循环体的总的执行次数是
for (i=5;i;i--)
for(j=0;j<4;j++){……}
A.A)20
B.B)25
C.C)24
D.D)30
6.)有以下程序
void swap1(int c0[], int c1[])
{ int t ;
t=c0[0]; c0[0]=c1[0]; c1[0]=t;
}
void swap2(int *c0,int *c1)
{ int t;
t=*c0; *c0=*c1; *c1=t;
}
main()
{ int a[2]={3,5}, b[2]={3,5};
swap1(a,a+1); swap2(&b[0],&b[1]);
printf("%d %d %d %d\n",a[0],a[1],b[0],b[1]);
}
程序运行后的输出结果是
A.A)3 5 5 3
B.B)5 3 3 5
C.C)3 5 3 5
D.D)5 3 5 3
7.)面关于虚函数的描述,错误的是( )
A.A)在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数
B.B)基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数
C.C)虚函数可以是另一个类的友元函数,但不能是静态成员函数
D.D)基类中说明的纯虚函数在其任何派生类中都必须实现
8.以下程序的输出结果是
#include <iostream>
using namespace std;
long fun( int n)
{
long s;
if(n==1 || n==2) s=2;
else s=n-fun(n-1);
return s;
}
int main(int argc, char* argv[])
{
cout<<fun(3);
return 0;
A.A) 1
B.B) 2
C.C) 3
D.D) 4
9.中国《涉外民事关系法律适用法》第42条规定:消费者合同,适用消费者经常居所地法律;消费者选择适用商品、服务提供地法律或者经营者在消费者经常居所地没有从事相关经营活动的,适用商品、服务提供地法律。 此条规定体现了( )。
A.国家主权独立原则
B.平等互利原则
C.保护弱方当事人合法权益原则
D.维护和促进国际民商事交往发展的原则
10.中国《涉外民事关系法律适用法》第15条规定,人格权的内容,适用( )
A.权利人经常居所地法律
B.权利人住所地法律
C.权利人国籍所属国法律
D.权利人选择的法律
11.(16)有以下程序
#include <iostream>
using namespace std;
struct STU
{
char name[10];
int num;
float TotalScore;
};
void f(struct STU *p)
{
struct STU s[2]={{"SunDan",20044,550},{"Penghua",20045,537}}, *q=s;
++p ; ++q; *p=*q;
}
int main(int argc, char* argv[])
{
struct STU s[3]={{"YangSan",20041,703},{"LiSiGuo",20042,580}};
f(s);
cout<<s[1].name<<s[1].num<<s[1].TotalScore;
return 0;
}
程序运行后的输出结果是
A.A)SunDan 20044 550
B.B)Penghua 20045 537
C.C)LiSiGuo 20042 580
D.D)SunDan 20041 703
12.设有以下定义和语句
char str[20]="Program",*p;
p=str;
则以下叙述中正确的是
A.A)*p与str[0]的值相等
B.B)str与p的类型完全相同
C.C)str数组长度和p所指向的字符串长度相等
D.D)数组str中存放的内容和指针变量p中存放的内容相同
13.依中国《涉外民事关系法律适用法》第13条规定,宣告失踪或者宣告死亡,适用( )。
A.自然人国籍国法律
B.自然人住所地法律
C.自然人经常居所地法律
D.法院地法律
14.在C++语言提供的合法的关键字是
A.A)swicth
B.B)cher
C.C)Case
D.D)default
15.(8) 在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是( )
A.A)一元成员运算符
B.B)二元成员运算符
C.C)一元友元运算符
D.D)选项B和选项C都可能
16.如果表达式 a>=b 中的“>=”是作为非成员函数重载的运算符,则可以等效地表示()
A.A)a.operator>=(b)
B.B)b.operatotr>=(a)
C.C)operator>=(a,b)
D.D)operator>=(b,a)
17.中国《涉外民事关系法律适用法》第36条规定:“不动产物权,适用不动产所在地法律。”这是一条( )。
A.单边冲突规范
B.双边冲突规范
C.重叠适用的冲突规范
D.选择适用的冲突规范
18.下列哪个是C++语言的有效用户定义标识符?( )
A.A)_No1
B.B)No.1
C.C)12345
D.D)int
19.)设已有定义:float x;则以下对指针变量p进行定义且赋初值的语句中正确的是
A.A)float *p=1024;
B.B)int *p=(float)x;
C.C)float p=&x;
D.D)float *P=&x;
20.中国《涉外民事关系法律适用法》第14条规定,法人及其分支机构的民事权利能力、民事行为能力、组织机构、股东权利义务等事项,适用( )
A.登记地法律
B.主营业地法律
C.经常居所地法律
D.住所地法律