最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

数据结构课后答案

来源:动视网 责编:小OO 时间:2025-09-29 23:21:25
文档

数据结构课后答案

2011年元月湖北大学自学考试模拟题C++程序设计模拟题一(课程代码04737)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。湖北大学自考教育网会以为快的速度为大家更新网站内容和知识要点、每次考前模拟题;湖北大学自考,湖北大学自考专升本招生信息;感谢大家的支持和关注谢谢!1.编写C++程序一般需经过的几个步骤依次是编辑、编译、连接、运行2.决定C++语言中函数的返回值类型的是在定
推荐度:
导读2011年元月湖北大学自学考试模拟题C++程序设计模拟题一(课程代码04737)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。湖北大学自考教育网会以为快的速度为大家更新网站内容和知识要点、每次考前模拟题;湖北大学自考,湖北大学自考专升本招生信息;感谢大家的支持和关注谢谢!1.编写C++程序一般需经过的几个步骤依次是编辑、编译、连接、运行2.决定C++语言中函数的返回值类型的是在定
2011年元月湖北大学自学考试模拟题

C++程序设计 模拟题一

(课程代码04737)

一、单项选择题(本大题共20小题,每小题1分,共20分)

在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。湖北大学自考教育网会以为快的速度为大家更新网站内容和知识要点、每次考前模拟题;湖北大学自考,湖北大学自考专升本招生信息;感谢大家的支持和关注谢谢!

1. 编写C++程序一般需经过的几个步骤依次是编辑、编译、连接、运行

2. 决定C++语言中函数的返回值类型的是在定义该函数时所指定的数据类型

3. 下面叙述不正确的是(D)

A. 派生类一般都用公有派生             B. 对基类成员的访问必须是无二义性的

C. 赋值兼容规则也适用于多重继承的组合  D. 基类的公有成员在派生类中仍然是公有的

4. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是. 类

5. 在公有派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中的私有成员

6. 对基类和派生类的关系描述中,错误的是(B)

A. 派生类是基类的具体化  B. 基类继承了派生类的属性  C. 派生类是基类定义的延续

D. 派生类是基类的特殊化

7. 关于this指针使用说法正确的是保证基类私有成员在子类中可以被访问。

8. 所谓多态性是指  不同的对象调用相同名称的函数

9. 一个函数功能不太复杂,但要求被频繁调用,则应把它定义为内联函数

10. 下面函数模板定义中不正确的是A

11. 假设ClassY:publicX,即类Y是类X的派生类,则说明一个Y类的对象时和删除Y类对象时,调用构造函数和析构函数的次序分别为X,Y;Y,X

12. 适宜采用inline定义函数情况是 函数代码少、频繁调用

13. 假定一个类的构造函数为A(int aa,int bb) {a=aa--;b=a*bb;},则执行A x(4,5);语句后,x.a和x.b的值分别为4和20

14. 在类中说明的成员可以使用关键字的是public

15. 下列不能作为类的成员的是(B)

A. 自身类对象的指针 B. 自身类对象 C. 自身类对象的引用 D. 另一个类的对象

16. 使用地址作为实参传给形参,下列说法正确的是实参与形参是同一对象

17. 下列程序的输出结果是()

#include

void main()

{int n[][3]={10,20,30,40,50,60};

int (*p)[3];

p=n;

cout<B. 10,20,30

18. 在C++中,使用流进行输入输出,其中用于屏幕输入cin

19. 假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为x.a()

20. 关于对象概念的描述中,说法错误的是(A)

A. 对象就是C语言中的结构变量 B. 对象代表着正在创建的系统中的一个实体

C. 对象是类的一个变量  D. 对象之间的信息传递是通过消息进行的

二、填空题(本大题共20小题,每小题1分,共20分)

请在每小题的空格中填上正确答案。错填、不填均无分。

1. C++的流库预定义了4个流,它们是cin、cout、clog和_Cerr__。

2. 每个对象都是所属类的一个_实例__。

3. 在已经定义了整型指针ip后,为了得到一个包括10个整数的数组并由ip所指向,应使用语句_int *ip=new int[10]__。

4. 函数模板中紧随template之后尖括号内的类型参数都要冠以保留字_class__。

5. 定义类的动态对象数组时,系统只能够自动调用该类的__无参_构造函数对其进行初始化。

6. 表达式cout<7. 在C++中,访问一个指针所指向的对象的成员所用的指向运算符是_->__。

8. 假如一个类的名称为MyClass,使用这个类的一个对象初始化该类的另一个对象时,可以调用_复制或拷贝__构造函数来完成此功能。

9. 对赋值运算符进行重载时,应声明为_类成员_函数。

10. 如果要把A类成员函数f()且返回值为void声明为类B的友元函数,则应在类B的定义中加入的语句_friend void A::f();__。

11. 下列程序段的输出结果是_4__。

for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j);cout<12. String 类的_find__方法返回查找到的字符串在主串的位置。

13. int n=0;

while(n=1)n++;

while循环执行次数是_无限次__。

14. 控制格式输入输出的操作中,函数__setfill(char)_是用来设置填充字符。要求给出函数名和参数类型[解析]格式控制方法的使用,如setw,setfill等等。

15. C++语言支持的两种多态性分别是编译时的多态性和_运行时__的多态性。

16. 设函数sum是由函数模板实现的,并且sum(3,6)和sum(4.6,8)都是正确的函数调用,则函数模板具有__2_个类型参数。

17. 执行下列代码

string str("HelloC++");

cout<程序的输出结果是_C++__。

18. 在面向对象的程序设计中,将一组对象的共同特性抽象出来形成_类__。

19. 定义类动态对象数组时,元素只能靠自动调用该类的__无参构造函数_来进行初始化。

20. 已知有20个元素int类型向量V1,若用V1初始化为V2向量,语句是__ector V2(V1);_。

三、改错题(本大题共5小题,每小题4分,共20分)

1. 

#include

class Test

{private:

int x,y=20;   

public:

Test(int i,int j){x=i,y=j;}

int getx(){return x;}

int gety(){return y;}

};

void main()

{Test mt(10,20);

cout<cout<}

1、int x,y=20;在类内部不能对数据成员直接赋值。[修改]int x,y;

2.

#include

class Test

{int x,y;

public:

fun(int i,int j)

{x=i;y=j;}

show()

{cout<<"x="<if(y)

cout<<",y="<cout<};

void main()

{Test a;

a.fun(1);

a.show();

a.fun(2,4);

a.show();

}

int i,int j调用时,既有一个参数,也有两个参数,且没有重载,所以参数需要带默认值。所以int i,int j错误。

3. #include

class A

{int i;

public:

virtual void fun()=0;

A(int a)

{i=a;}

};

class B:public A

{int j;

public:

void fun()

{cout<<"B::fun()\n"; }

B(int m,int n=0):A(m),j(n){}

};

void main()

{A *pa;

B b(7);

pa=&b;

}

3、B(int m,int n=0):A(m),j(n){}因为基类是抽象类,不能被实例化,所以在派生类中不能调用初始化基类对象。所以B(int m,int n=0):A(m),j(n){}错误,删去A(m)。

4. #include

class X

{public:

int x;

public:

X(int x)

{cout<x=x<X(X&t)

{x=t.x;

cout<}

void fun(X);

};

void fun(X t)

{cout<void main()

{fun(X(10));}

4、[修改]B(int m,int n=0):j(n){}cout<x=x<x=x表达式的值要加括号。

[修改]cout<<(this->x=x)<5. #include

#include

class Bas

{public:

Bas(char *s="\0"){strcpy(name,s);}

void show();

protected:

char name[20];

};

Bas b;

void show()

{cout<<"name:"<void main()

{Bas d2("hello");

show();

}

5、void show();是普通函数不是成员函数,但是要访问类成员,需要定义为友元函数。[修改]friend void show();

四、完成程序题(本大题共5小题,每题4分,共20分)

1. 在下面程序横线处填上适当字句,以使该程序执行结果为:

50 4 34 21 100 7.1 8.1 9.1 10.1 11.1

#include

template

void f (____T a[]______)

{_____int n,_____;

for (int i=0;it=a[i], a[i]=a[n-1-i], a[n-1-i]=t;

}

void main ()

{int a[5]={10,21,34,4,50};

double d[6]={11.1,10.1,9.1,8.1,7.1};

f(a,5);f(d,6);

for (int i=0;i<5;i++)

cout <cout <for (i=0;i<6;i++)

cout << d[i] << "";

cout << endl;

}

T t=0

2. 在下面程序的底画线处填上适当的字句,使该程序执行结果为40。

#include

class Test

{ public:

____static int x;

Test (int i=0)

{x=i+x;}

int Getnum()

{return Test::x+7;}

};

____int Test::x=30;___;

void main()

{Test test;

cout<}

3. 在下列程序的空格处填上适当的字句,使输出为:0,2,10。

#include

#include

class Magic

{double x;

public:

Magic(double d=0.00):x(fabs(d))

{}

Magic operator+(__operator+(Magic&c)____)

{

return Magic(sqrt(x*x+c.x*c.x));

}

____friend ostream&operator___operator<<(ostream & stream,Magic & c)

{ stream<return stream;

}

};

void main()

{Magic ma;

cout<Magic(-8)<}

4. 下面是一个输入半径,输出其面积和周长的C++程序,在下划线处填上正确的语句。

#include

___ using namespace std_______;

_____ #define pi 3.14159____;

void main()

{double rad;

cout<<"rad=";

cin>>rad;

double l=2.0*pi*rad;

double s=pi*rad*rad;

cout<<"\n The long is:"<cout<<"The area is:"<5. 程序实现大写字母转换成小写字母。

#include

void main()

{char a;

___ int i=32;___;

cin>>a;

if(____a>=A && a<=Z___)

a=a+i;

cout<}

五、程序分析题(本大题共2小题,每小题5分,共10分)

1. 给出下面程序输出结果。

#include

class a

{public:

virtual void print()

{cout<< "a prog..."<< endl;};

};

class b:public a

{};

class c:public b

{public:

void print(){cout<<"c prog..."<};

void show(a *p)

{(*p).print();

}

void main()

{a a;

b b;

c c;

show(&a);

show(&b);

show(&c);

}

答:prog...

a prog...

c prog...

2. 给出下面程序输出结果。

#include

#include

#include

bool fun(long n);

void main()

{long a=10,b=30,l=0;

if(a%2==0) a++;

for(long m=a;m<=b;m+=2)

if(fun(m))

{if(l++%10==0)

cout <cout <}

}

bool fun(long n)

{int sqrtm=(int)sqrt(n);

for(int i=2;i<=sqrtm;i++)

if(n%i==0)

return false;

return true;

}

答:11 13 17 19 23 29

六、程序设计题(本大题共l小题,共10分)

1. 已定义一个Shape抽象类,在此基础上派生出矩形Rectangle和圆形Circle类,二者都有GetPerim()函数计算对象的周长,并编写测试main()函数。

class Shape

{public:

Shape(){}

~Shape(){}

virtual float GetPerim()=0;

}

解:class Rectangle:public Shape

{public:

Rectangle(float i,float j):L(i),W(j){}

~Rectangle(){}

float GetPerim(){return 2*(L+W);}

private:

float L,W;

};

class Circle:public Shape

{public:

Circle(float r):R(r){}

float GetPerim(){return 3.14*2*R;}

private:

float R;

};

void main()

{Shape * sp;

sp=new Circle(10);

cout<GetPerim ()<sp=new Rectangle(6,4);

cout<GetPerim()<}

文档

数据结构课后答案

2011年元月湖北大学自学考试模拟题C++程序设计模拟题一(课程代码04737)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。湖北大学自考教育网会以为快的速度为大家更新网站内容和知识要点、每次考前模拟题;湖北大学自考,湖北大学自考专升本招生信息;感谢大家的支持和关注谢谢!1.编写C++程序一般需经过的几个步骤依次是编辑、编译、连接、运行2.决定C++语言中函数的返回值类型的是在定
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top