文档库 最新最全的文档下载
当前位置:文档库 › 第1-7章C++面向对象程序设计_作业参考答案

第1-7章C++面向对象程序设计_作业参考答案

第1-7章C++面向对象程序设计_作业参考答案
第1-7章C++面向对象程序设计_作业参考答案

第1章

1.2

【解答】

重点:标准输入输出库函数——标准输入输出流对象

#include

int main()

{ char name[20];

cout<<”Hello!What’s your name?”<

cin>>name;

cout<

return 0;

}

1.3

const int model = 90; // model is a const

const int v[ ]={1,2,3,4}; // v[i] is a const

const int x; // error: no initializer 未赋初值

void f( )

{

model =200; // error 不能修改常量的值

v[2]++; // error 不能修改常量的值

}

【修改1】

const int model = 90; // model is a const

const int v[ ]={1,2,3,4}; // v[i] is a const

const int x=0; //赋初值

void f( )

{

cout<

cout<< v[2]<

1

}

或者int temp=v[2]+1;

【修改2】

int *const model=90;

const int* v[]={1,2,3,4};

1.4int strcmp(const char *, const char *);

【解答】确保函数strcmp不会修改参数指针所指向的变量

1.6

【解答】(讲义)

?C++语言是强类型化语言,任何函数在使用以前必须有该函数的原型说明,以便进行实际参数与形式参数之间的类型匹配检查。

?函数返回值的类型和函数参数的类型、个数、次序在函数声明,函数定义和函数调用时必须匹配。

?C++语言的编译器执行上述检查能显著减少很多隐藏的错误。

使用函数原形执行强类型检查。任何函数在使用以前必须有该函数的原型说明,以便进行实际参数与形式参数之间的类型匹配检查。函数返回值的类型和函数参数的类型、个数、次序在函数声明,函数定义和函数调用时必须匹配。如果某个函数的定义和调用与其原型不匹配,那么编译器会指出这种错误,而不用等到运行程序时才显示错误。

创建带有缺省参数的函数时,应注意:

1、缺省参数值应该代表最常使用的情况。如果在80~90%的时间里能用上缺省值,缺省参数才比较有意义。

2、如果给某个参数一个缺省值,那么其后的所有参数都需要赋给缺省值。

1.8

【解答】

2

#include

using namespace std;

//Overload max( ) three ways 重载函数名max三次

int max(int a,int b);

long max(long a,long b);

double max(double a,double b);

int main()

{ int a1=3,b1=10;

long a2=123456,b2=567893;

double a3=2*10^6,b3=-12.34;

cout<<"int"<

cout<<"long"<

cout<<"double"<

return 0;

}

int max(int a,int b)

{ int c;

a>b?c=a:c=b;

return(c);

}

long max(long a,long b)

{ long c;

a>b?c=a:c=b;

return(c);

}

double max(double a,double b)

{ double c;

a>b?c=a:c=b;

return(c);

}

3

1.9要点:申请动态数组

【解答】

// A simple example of new and delete.

#include

#include

using namespace std;

const int N=10;

int main( )

{ char *p,q;

int i=0;

p=new char[N]; //allocate memory for a array 为数组分配动态内存空间if(p==NULL)

{ cout<<"Allocation error\n";

return 1;

}

cin>>q;

while(q!='#')

{ p[i++]=q;

cin>>q;

}

cout<

i=0;

while(i

cout<

cout<

delete [] p; // release memory 释放new分配的动态内存空间

return 0;

}

4

1.10

【解答】

#include

void f(int a[ ],int n, int &max, int &min)

{

max=min=a[0];

for(int i=1;i

{

if(max

if (min>a[i]) min=a[i];

}

}

void main( )

{

int a[10]={2,5,3,9,0,8,1,7,6,4};

int max,min;

f(a,10,max,min);

cout<<"Max: "<

cout<<"Min: "<

}

第2章

2.1 C++语言中类class和结构struct的主要区别是什么?

【解答】在C++中,对结构体做了一个很重要的扩充,即允许结构体包含函数成员。如此一来,我们可以使用结构体中的数据成员描述对象的属性,使用结构体中的函数成员描述对象的操作。

2.2什么是类的接口,什么是类的实现?

【解答】

一般把仅含函数原型的类声明部分称为类的接口;

一个类的内部数据结构和其所有成员函数的定义部分称为类的实现。

2.3公用public成员和私有private成员有何区别?

5

【解答】

私有private成员只能被该类中的其他成员访问,而程序中的其它代码是不能直接访问这些变量的。

公用public成员既可以被该类的其他成员访问,也可以被程序中的其它代码访问。类中的公用成员对外部代码是开放的,通常情况下,程序中的其它代码通过类的公用成员函数来访问类的私有成员。

2.4构造函数和析构函数的主要作用是什么?它们各自有什么特性?

【解答】

构造函数是类的一种特殊成员函数,用来为对象进行初始化(给对象的成员变量赋初值、申请一些

系统资源、打开文件操作等)。在对象生成的时候自动执行初始化,这会消除任何错误地不执行初始化的可能。这是C++面向对象程序设计帮助减少复杂性的另一途径。

析构函数的作用与构造函数正好相反,当对象被删除时,利用析构函数进行一些善后处理。一般情况

下析构函数执行构造函数的逆操作,例如可以利用析构函数来释放构造函数所动态申请的内存空间。

2.5使用const修饰作为参数的对象引用有什么好处?

【解答】

2.6

【解答】

class counter{

int value;

public:

counter(int number){value=number;}

void increment(){value++;} //给原值加1

void decrement(){value--;} //给原值减1

int getvalue(){return value;} //取得计数器的值

void print(){cout<<”value is:”<

6

};

void main()

{ counter Count(10);

Count.increment();

Count.print();

Count.decrement();

Count.print();

cout<

}

2.7试定义一个字符串类my_string ,使其至少具有内容(contents)和长度(length)两个数据成员,并具有显示字符串,求字符串长度、给原字符串后添加一个字符串等功能。

【解答】

#include

#include

class my_string{

private:

char *contents;

int length;

public:

my_string(char *s);

void show();

int getlength();

void add(char *s);

};

my_string::my_string(char *s)

{ contents=new char[strlen(s)+1];

strcpy(contents,s);

length=strlen(s);

}

7

void my_string::show()

{ cout<

}

int my_string::getlength()

{ return length;

}

void my_string::add(char *s)

{ s trcat(contents,s);

}

void main()

{ my_string ST("I am ");

cout<

ST.show();

ST.add("a student");

ST.show();

}

2.8 定义一个矩形类Rectangle,它有长length和宽width两个属性,有成员函数计算矩形的面积。并在main()函数中测试这个类。-

【解答】

#include

class Rectangle{

private:

int length;

int width;

public:

Rectangle(int l,int w);

8

int area();

};

Rectangle::Rectangle(int l,int w)

{ length=l;

width=w;

}

int Rectangle::area()

{ return (length*width);

}

void main()

{ Rectangle Rect(10,15);

cout<<"Area is:"<

}

第3章

3.1 解释下列名词:

类对象方法消息

类:“类”是对一组具有共同属性特征和行为特征的对象的抽象。一个类中所包含的方法和数据描述了一组对象的共同行为和属性。

对象:面向对象软件系统中的对象是基本的运行时(runtime)实体,它既包含数据,也包括作用于数据的操作。面向对象软件系统中的对象是现实世界中对象的模型,换句话说,是用来模仿或者描述客观现实世界中的对象的。

方法:面向对象程序设计中的术语“方法”对应于对象的行为(能力),即它是实现对象所具有的功能操作的代码段。在C++程序中,方法即是类中定义的成员函数,它是该类对象所能执行的操作的算法实现。

9

消息:在面向对象的程序中,一个对象向另一个对象发出的请求称为消息。消息是要求某个对象执行其中某个功能操作的规格说明。程序中的所有对象通过消息传递实现相互协作,完成一些特定的任务。

3.3 试述面向对象程序设计的基本思想。

面向对象程序设计(Object-Oriented Programming,简称OOP)的主要思想是:用面向对象程序设计语言中的对象和类直接模拟现实世界中的对象,将问题空间直接映射到软件空间。从而设计出尽可能直接、自然地表示问题求解方法的软件。

3.4 试述面向对象程序设计的主要特征。

面向对象程序设计的主要特征有抽象性、封装性、继承性和多态性。

3.6什么是面向对象程序设计中的封装性? 封装性有什么好处?在C++语言中如何实现封装性?

所谓封装,就是包含和隐藏对象信息,如内部数据结构和代码的能力。在C++语言中使用类class实现封装性,将需要隐藏的数据和代码用关键字private限制,通过使用public修饰类的一些成员,形成对外的接口。

封装性的好处:

(1)封装性降低了程序设计的复杂度。

(2)提高了数据的安全性和代码的可靠性。

(3)封装改善了软件的可维护性。

(4)封装性也改善了程序模块可重用性。

第4章

4.1设计一个C++程序,在其中创建一个含有5个元素的Student类的对象数组,并给对象数组成员赋值,然后输出对象数组。输出对象数组时分别使用点(.)运算符和箭头(->)运算符。

【解答】

#include

#include

class Student{

10

private:

int number;

char name[15];

float score;

public:

Student(int number1,char *name1,float score1); //构造函数的声明void modify(float score1)

{ score=score1; }

void print( );

};

//构造函数的定义

Student::Student (int number1,char *name1,float score1)

{

number=number1;

strcpy(name,name1);

score=score1;

}

void Student::print( )

{

cout<<"number: "<

<<" score: "<

}

int main( )

{ Student aSA[4]={Student(1,"Li_Ming",98),Student(2,"Bill",78),

Student(3,"Wang_Wei",85),Student(4,"David",96)};

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

aSA[i].print( );

Student *p=aSA;

for(i=0;i<4;i++,p++)

p->print();

11

return 0;

}

4.3阅读下列程序,指出其中的错误。并分析出错的原因。

#include

using namespace std;

class myclass {

int a, b;

public:

void set(int i, int j) { a = i; b = j; }

void show() { cout << a << ' ' << b << "\n"; }

};

class yourclass {

int a, b;

public:

void set(int i, int j) { a = i; b = j; }

void show() { cout << a << ' ' << b << "\n"; }

};

int main()

{ myclass obj1,obj3;

yourclass obj2;

obj1.set(10, 4);

obj3= obj1;

obj2= obj1;

obj1.show( );

obj2.show( );

obj3.show( );

return 0;

}

【解答】

obj2= obj1;两个对象不属于同一种类类型/不是由同一个类声明的

4.6 下列Circle类的定义中哪个是静态数据成员?哪个是静态成员函数?请在主

12

函数mani( )演示它们的应用。

class Circle

{ public:

Circle(float r)

{ radius=r;

++count;

}

~Circle() { --count; }

static int num() { return count; }

private:

float radius;

static int count;

};

【解答】

●静态成员变量应在创建类的对象前进行定义并初始化

●一个类的静态数据成员为该类所有对象共用,不管我们创建了这个类的多少

对象,其静态数据成员在内存中只有一份拷贝

●静态成员变量的最一般的作用就是对一些共享资源提供存取控制

●静态数据成员的主要用途是定义类的各个对象所共用的数据,如统计总数,

平均数等。

int Circle::count=0;

●一般来说,类的静态成员函数是用来访问静态数据成员的,当然也可以访问

全局变量。

●静态成员函数不具有this指针(静态成员函数不与某个具体的对象相联系,

它只属于该类)

Circle::num();

#include

class Circle

{ public:

Circle(float r)

{ radius=r;

++count;

13

}

~Circle() { --count; }

static int num() { return count; }

private:

float radius;

static int count;

};

int Circle::count=0;

void main()

{ Circle c1(10),c2(20);

cout<

}

第5章

5.1什么是堆?请举例说明如何在堆上创建对象。

【解答】

在固定存储区域与堆栈之间的自由区域称为堆,我们可以使用C++的动态内存分配系统从堆中为程序的数据分配存储单元。

#include

using namespace std;

class Square {

int side;

public:

Square(int x) { side = x; cout<<"Constructiong\n"; }

~Square( ){ cout<<"Destructiong\n"; }

void display() { cout << side << "\n"; }

};

int main()

14

{ Square *ps=new Square(10); //分配堆内存并调用构造函数初始化ps->display();

delete ps; //自动调用析构函数,然后释放堆内存

return 0;

}

5.3假设有以下的类定义,

class Square {

int side;

public:

Square(int x=10) { side = x; cout<<"Constructiong\n"; } ~Square( ){ cout<<"Destructiong\n"; }

void display() { cout << side << "\n"; }

};

请问以下几个语句有什么区别?

Square s1(),s3(5);

Square s2=s1;

Square s2(s1);

S3=s1;

【解答】

Square s1(),s3(5); //调用普通构造函数

Square s2=s1; //调用复制构造函数

Square s2(s1); //调用复制构造函数

S3=s1; //执行赋值运算,非初始化

5.4有了默认的复制构造函数,为何还需要自定义复制构造函数?在什么情况下需要自定义复制构造函数?

【解答】

?由于普通的构造函数通常用于初始化对象的某些成员,因此就不能调用普通构造函数创建对象的副本,因为这样产生的对象可能与现有的对象不完全相同。

?当把一个对象传递给函数时,我们需要使用的是对象的当前状态,而不是初始状态

15

《面向对象程序设计C 》期末试卷及标准答案

《面向对象程序设计C++》期末考试试卷(B) 一、单项选择题(每小题2分,共40分) 1、关于C++与C语言关系的描述中,()是错误的。 A.C语言是C++语言的一个子集B.C语言与C++语言是兼容的 C.C++语言对C语言进行了一些改进D.C++语言和C语言都是面向对象的 2、已知:int m=10; 下列表示引用的方法中,()是正确的。 A.int &x=m; B.int &y=10; C.int &z; D.float &t=&m; 3、考虑下面的函数原型声明:void testDefaulParam(int a,int b=7,char z='*'); 下面函数调用中,不合法的是()。 A.testDefaulParam(5); B.testDefaulParam(5,8); C.testDefaulParam(5,'#'); D.testDefaulParam(0,0,'*'); 4、系统在调用重载函数时往往根据一些条件确定哪个重载函数被调用,在下列选项中,不能作为依据的是()。 A.函数的返回值类型B.参数的类型C.函数名称D.参数个数 5、下列有关C++类的说法中,不正确的是()。 A.类是一种用户自定义的数据类型 B.只有类中的成员函数或类的友元函数才能存取类中的私有成员 C.在类中,如果不做特别说明,所有成员的访问权限均为私有的 D.在类中,如果不做特别说明,所有成员的访问权限均为公用的 6、已知X类,则当程序执行到语句X array[3];时,调用了()次构造函数。 A.0 B.1 C.2 D.3 7、有关析构函数的说法,不正确的是()。 A.析构函数有且仅有一个 B.析构函数和构造函数一样可以有形参 C.析构函数的功能是在系统释放对象之前作一些内存清理工作 D.析构函数无任何函数类型

第七章作业答案

第7章聚合物的粘弹性 1.举例说明聚合物的动态粘弹性和静态粘弹性的四个典型现象,为什么聚合物具有这些现象?这些现象在材料应用时有哪些利弊? 在一定温度和压力的外界条件下,聚合物的静态粘弹性表现为蠕变和应力松弛,动态粘弹性表现为滞后和力学损耗。 蠕变:在一定温度和恒定应力作用下,聚合物应变随时间增加而逐渐增大的现象。如软质PVC丝钩着一定质量的砝码,就会慢慢地伸长;解下砝码后,丝会慢慢地回缩。这就是软质PVC丝的蠕变和回复现象。坐久了的沙发;晾晒着的毛衣都是蠕变的实例。 应力松弛:在一定温度和恒定应变条件下,试样内部的应力随时间增加而逐渐衰减的现象。如拉伸一块未交联的橡胶至一定长度,并保持长度不变,随时间增加,橡胶的回弹力逐渐减小到零。例如松紧带;密封件在受外力时,密封效果逐渐变差(密封的重要问题) 滞后:在一定温度和交变应力作用下,聚合物应变会落后于应力的现象 内耗:交变应力作用下,由于滞后,则每一循环变化中就会产生能量损耗,以热能形式散发,以热耗散的能量与最大储能模量之比ψ=2πtg δ来表征。 如高速行驶的汽车轮胎会发热。原因:聚合物是具有一定柔性的长链分子的聚集体,在外力作用下,聚合物的链段会发生运动而改变构象,但由于链段运动的摩擦力很大,而使形变具有时间依赖性。 蠕变现象会影响受力材料的长期尺寸稳定性,应力松弛会使弹性材料的受力能力随时间变差。而内耗现象则会使高速行驶的汽车轮胎发热而爆胎,但也可利用内耗来制成吸音防震材料。 2.:画图 1)现有A聚苯乙烯与顺丁橡胶的共混物(20:80重量比);B乳液聚合的丁苯橡胶(无规共聚物,20:80重量比), C SBS(苯乙烯与丁二烯三嵌段共聚物,其中B:S为80:20),和D 高抗冲聚苯乙烯(HIPS)(顺丁橡胶粒子增韧聚苯乙烯,S:B为80:20)在同一张图中画出三个样品的储能模量、力学损耗因子与温度的动态力学曲线。 1) E’ tgδ T℃-110 -55 100

什么是面向对象程序设计

1 什么是面向对象程序设计,它与传统的结构式程序有什么不同。 面向对象程序设计是一种适用于设计、开发各类软件的范型。它是将软件看成是一个由对象组成的社会:这些对象具有足够的智能,能理解从其他对象接受的信息,并以适当的行为作出响应;允许低层对象从高层对象继承属性和行为。通过这样的设计思想和方法,将所模拟的现实世界中的事物直接映射到软件系统的解空间。 与传统的结构式程序设计相比,面向对象程序设计吸取了结构式程序设计的一切优点(自顶向下、逐步求精的设计原则)。而二者之间的最大差别表现在: ·面向对象程序采用数据抽象和信息隐藏技术使组成类的数据和操作是不可分割的,避免了结构式程序由于数据和过程分离引起的弊病。 · 面向对象程序是由类定义、对象(类实例)和对象之间的动态联系组成的。而结构式程序是由结构化的数据、过程的定义以及调用过程处理相应的数据组成的 2 用面向对象方法建立模型的思维过程是怎样的。 用面向对象方法建立拟建系统的模型的过程就是从被模拟现实世界的感性具体中抽象要解决的问题概念的过程。这种抽象过程分为知性思维和具体思维两个阶段,其中:·知性思维是从感性材料中分解对象,抽象出一般规定,形成了对对象的普遍认识。·具体思维是从知性思维得到出的一般规定中揭示的事物的深刻本质和规律,其目的是把握具体对象的多样性的统一和不同规定的综合。 3 解释以下概念: ①对象:在现实世界中,对象就是可以感觉到的实体。每个对象具有一个特定的名字以 区别于其他对象;具有一组状态用来描述它的某些特性;具有一组操作,每一个操作决定对象的一种功能或行为(为自身服务的操作和为其他对象提供服务的操作)。而在面向对象系统中,对象是可以标识的存储区域。每个对象的状态被保存在此区域中,而实现一类对象行为的操作(代码)被保存在另外相关的存储器区域中。 ②消息:消息是要求某个对象执行其某种功能操作(方法)的规格说明。因此,消息是 由消息的接收者、消息要求提供的操作(消息名)和必要的参数组成的。 ③类:在现实世界中,类是对一组具有共同特性(属性和行为)的客观对象的抽象。而 在面向对象系统中,类是由程序员自定义的具有特定结构和功能的类型,是一种代码共享的手段。 ④实例:任何一个对象都是该对象所属类的一个具体实例。 ⑤公有消息:是由对象外向对象发送的消息,用于激活该对象的某种方法。 ⑥私有消息:是由对象向自身发送的消息,用于内部操作;该类消息不能从对象外向该 对象发送。 ⑦消息序列:在面向对象系统中一个事件的发生总会有多个对象的多次相互作用才能完 成,使得这些对象能够相互作用的消息组成的序列被称为消息序列。 4 类与实例的关系如何? 类是创建对象的模板,而对象是实现类的实例。属于同一类的不同实例必须具有: ·相同的操作集合; ·相同的静态属性集合; ·不同的对象名和属性动态值。

国家开放大学学习指南形考作业及答案

各位同学:每位同学的形考题目都可能不同,答案顺序都可能打乱的,请仔细核对后再做,每次形考作业最多只有3次机会。 国家开放大学学习指南形考作业1 一、多选题(每题5分,共计10分) 1、同学们,在学习了“任务一”的相关内容后,请将你认为适合描述为国家开放大学特色的选项选择出来。 选择一项或多项:(BCDE) A. 国家开放大学是一所与普通高校学习方式相同的大学 B. 国家开放大学是一所在教与学的方式上有别与普通高校的新型大学 C. 国家开放大学是基于信息技术的特殊的大学 D. 国家开放大学可以为学习者提供多终端数字化的学习资源 E. 国家开放大学是为没有条件参与全日制校园学习的人群提供学习资源的大学 F. 国家开放大学的学习参与活动必须要到校园中和课堂上反馈 2、请将下列适用于国家开放大学学习的方式选择出来。 选择一项或多项:(ABCD) A. 利用pad、手机等设备随时随地学习 B. 在集中面授课堂上向老师请教问题 C. 在网络上阅读和学习学习资源 D. 在课程平台上进行与老师与同学们的交流讨论反馈 二、判断题(每题2分,共计10分) 3、制定时间计划,评估计划的执行情况,并根据需要实时地调整计划,是管理学习时间的有效策略。(对) 4、在国家开放大学的学习中,有课程知识内容请教老师,可以通过发email、QQ群、课程论坛等方式来与老师联络。(对) 5、远程学习的方法和技能比传统的课堂学习简单,学习方法并不重要。(错) 6、纸质教材、音像教材、课堂讲授的学习策略都是一样的。(错) 7、在网络环境下,同学之间、师生之间无法协作完成课程讨论。(错) 国家开放大学学习指南形考作业2 一、单选题(每题2分,共计10分) 1、开放大学学制特色是注册后(A)年内取得的学分均有效。 选择一项: A. 8 B. 3 C. 10 D. 5 2、请问以下是专业学习后期需要完成的环节?(B)

c面向对象程序设计试题和答案(经典题目)

一、填空题(每空1分,共14分) 1、观看以下程序: class point{ public: void show() {cout<<”point”<

(A)指针(B)引用(C)枚举(D)结构 3、类成员的访问权限中,()只能被本类的成员函数和其友元函数访问。 (A)share (B)public (C)private (D)protected 4、关于构造函数,下列说法不正确的是()。 (A)构造函数名字和类名相同 (B)构造函数在创建对象时自动执行 (C)构造函数无任何函数返回类型 (D)构造函数有且只有一个 5、派生类可以访问其基类的()。 (A)公有成员(B)保护成员 (C)私有派生(D)公有和保护成员 6、下列关于运算符重载的描述中,错误的是()。 (A)运算符重载不可以改变操作数的个数 (B)运算符重载不可以改变运算符的功能 (C)运算符重载不可以改变结合方向 (D)运算符重载不可以改变运算优先级 7、C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是() (A)面向过程(B)面向对象(C)安全性(D)复用性 8、对于类中定义的成员,其隐含访问权限为()。 A.public B.protected C.private D.static 9、下面有关重载函数的说法中正确的是() (A)重载函数必须具有不同的返回值类型;(B)重载函数形参个数必须不同; (C)重载函数必须有不同的形参列表(D)重载函数名可以不同; 10、有如下的对类“CSample”的说明,其中()是错误的。 class CSample { A.int a=23; B.CSample(); public: C.CSample(int val); D.~ CSample(); 11、在int a=3,int *p=&a;中,*p的值是( ) A.变量a的地址值 B.无意义 C.变量p的地址值 D.3 12、每个类()构造函数。 (A)只能有一个(B)只可有公有的

第七章 作业管理与接口习题及答案

第七章作业管理与接口习题及答案 一、填空题 1.作业是由① 、② 和③ 组成的。 【答案】①程序、②数据、③作业说明书 【解析】从用户的角度看,作业是在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所作的有关该次业务处理的全部工作。从系统的角度看,作业是一个比程序更广泛的概念,它由程序、数据和作业说明书组成。系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。 2.批处理系统中,是以① 为单位把程序和数据调入② 以便执行。 【答案】①作业,②内存 【解析】从系统的角度看,作业是批处理系统抢占内存的单位,而分时系统不存在作业的概念。 3.处理机调度算法中:“相应比高者优先”其相应比是采用公式: 相应比=确定的。 【答案】响应比=(等待时间+计算时间)/计算时间 【解析】本算法的思想是对“计算时间”短的小作业优先处理;对“等待时间”长的作业,即使该作业“计算时间”不是很短,也可得到较高的响应比,获得运行的机会。 二、单项选择题 1.在一个以批处理为主的系统中,为了保证系统的吞吐率,总是要力争缩短用户作业的。 (A)周转时间(B)运行时间 (C)提交时间(D)完成时间 【答案】(A) 【解析】周转时间是衡量批处理系统的重要指标。 2.作业在系统中存在与否的唯一标志是。 (A)源程序(B)作业说明书 (C)作业控制块(D)目的程序 【答案】(C) 【解析】系统是根据作业控制块 JCB来感知作业的存在的。 3.作业调度从处于① 状态的队列中选取适当的作业投入运行。从作业提交给系统到作业完成的时间间隔叫做② 。③ 是指作业从进入后备队列到被调度程序选中时的时间间隔。 (A)运行(B)提交 (C)后备(D)完成 (E)停止(F)周转时间 (G)响应时间(H)运行时间 (I)等待时间(J)触发时间 【答案】①(C),②(F),③(I) 4.在批处理系统中,周转时间是。 (A)作业运行时间(B)作业等待时间和运行时间之和

《面向对象程序设计》答案

实验一熟悉VC++IDE开发环境 一、实验目的 1、熟悉VC++6.0集成开发环境,熟练掌握VC++6.0项目工作区、各种编辑器、菜单栏和工具栏的使用。 2、掌握如何编辑、编译、连接和运行一个C++程序。 3、通过运行简单的C++程序,初步了解C++源程序的结构和特点。 二、实验要求 1、分析下列程序运行的结果。 程序一: #include int add(int x,int y=8); void main() { int x=4; cout< void main() { int *p,i; i=5; p=&i; i=*p+10; cout<<"i="< void main(void) { int i=10; int &r=i; r++; cout<<"i="< void func(); int n=1; void main() { static int a; int b= -9; cout <<"a:"<

形考作业理论部分全部参考答案

计算机应用基础形成性考核册(XP平台)参考答案 作业1:(Windows XP部分) 一、⒈C ⒉B ⒊D ⒋C ⒌C ⒍D ⒎C ⒏B ⒐B ⒑D 二、⒈ENIAC ⒉四⒊外围⒋多媒体计算机技术⒌操作系统软件⒍还原点⒎存储、传输⒏超文本传输协议⒐电子邮件⒑Re、Fw 三、1、右击——属性——常规选项卡:电话号码:8888;选项选项卡:重拨次数:100、重拨间隔:30秒、去掉勾选“断线重拨”;高级选项卡:勾选“通过限制……”。 2、开始——控制面板——日期、时间、语言和区域设置——添加其它语言——详细信息——添加——勾选“键盘布局/输入法”——选择“西班牙文”——确定 3、启动IE——工具菜单——Internet选项——内容——分级审查:启用——暴力——级别0——确定——密码:21、确认密码:21——确定 4、提示:建立文件夹前先在左窗中选择上级文件夹。 ⑤右击——属性——勾选“只读” ⑦(资源管理器)工具菜单——文件夹选项——查看选项卡——选择“显示所有文件”——确定。 作业2:(Word2003部分) 一、⒈A ⒉C ⒊D ⒋C ⒌C ⒍C ⒎B ⒏A ⒐D ⒑D 二、⒈页面设置⒉垂直⒊文档1⒋光标⒌选定⒍复制⒎边框⒏单元格⒐拆分⒑另存为_ 三、上机操作题: 1、⑴输入文字; ⑵选定第一行标题,在字体选择框中选择“黑体”、在字号选择框中选择“四号”、单击粗体按钮、居中按钮; ⑶选定“*”,插入菜单——符号——选择字体为Symbol——选择190字符——插入——关闭; ⑷选定第一行,格式菜单——段落——段后:1行——确定; ⑸选定正文中的中文,在字体选择框中选择“黑体”、在字号选择框中选择“五号”、单击下划线按钮右边的下拉箭头选择双线; ⑹单击工具栏上的保存按钮,文件名中输入TEST1.doc。 2、⑴输入文字; ⑵选定第一行标题,在字体选择框中选择“黑体”、在字号选择框中选择“四号”、单击粗体按钮、斜体按钮、右对齐按钮; ⑶选定“**”,插入菜单——符号——选择字体为Symbol——选择190字符——插入(两次)——关闭; ⑷选定“*”,插入菜单——符号——选择字体为Wingdings——选择203字符——插入——关闭; ⑸选定第一行,格式菜单——段落——段后:1行——确定; ⑹选定正文中的中文,在字体选择框中选择“黑体”、在字号选择框中选择“五号”、单击下划线按钮右边的下拉箭头选择单线; ⑺单击工具栏上的保存按钮,文件名中输入TEST2.doc。 3、⑴输入文字; ⑵选定其中的中文,格式菜单——字体——在中文字体选择框中选择“黑体”、在字号选择框中选择“四号”、在字形选择框中选择加粗;在“下划线”选择框中选择波浪线;——确定; ⑶将光标移到“的局限,”后,插入菜单——图片——来自文件——选择J0298897.wmf图片——确定;

第七章作业标准答案

作者: 日期: 2

《C语言程序设计》第7章作业 布置日期:2012-3-29 截止日期:2012-4-12 确认修改 单选题(每小题5分,共100分) 1、在C语言中,引用数组元素时,其数组下标的数据类型允许是 A、整型常量 「B、整型表达式 ? C整形常量或整形表达式 厂D任何类型的表达式 2、若有定义:int a[10] ,则对数组a元素的正确引用是 A、a[10 C B、a[3.5] C C、a⑸ D a[10-10] 3、以下能对一维数组a进行正确初始化的语句是_____________ A、int a[10]={0;0;0;0;0}; 厂B、int a[10]={0} ? C、int a[ ] = {0} 厂 D int a[10]={10*1}

4、若有定义:int a[3][4], 则对数组a元素的正确引用是 2

A a[2][4] B、a[1,3] C、a(2) ? D a[10-10][3] 5、____________________________________________________ 以下能对二维数组a进行正确初始化的语句是___________________________ A、int a[2][]={{1,0,1},{5,2,3}}; ?B、int a[][3]={{1,2,3},{4,5,6}}; C、int a[2][4]={{1,2,3},{4,5},{6}}; D int a[][3]={{1,0,1},{},{1,1}}; 6、以下不正确的定义语句是_________ 。 A、double x[5]={2.0,4.0,6.0,8.0,10.0} ; ?B、int y[5]={0,1,3,5,7,9}; C、char c1[ ]={ ‘ 1','2',3,'4','5'}; D char c2[ ]={ ‘ \x10','\xa','\x8'}; 7、对s的初始化,其中不正确的是___________ 。 A、char s[5] ={ “abc” }; B、char s[5]={ ‘ a','b','c'}; C、char s[5]= ”” ; 」D char s[5]= ” abcdef ” ; &下列有关字符数组的描述中错误的是 ____________ 。

面向对象程序设计(答案)

学号:姓名: 第三章面向对象程序设计作业 一、判断题 1、一个Java源程序可有多个类,但只仅有一个public类,而且程序名与public类名相同。对 2、如果类A和类B在同一个包中,则除了私有成员外,类A可以访问类B中所有的成员。对 3、接口中的成员变量全部为常量,方法为抽象方法。对 4、抽象类可以有构造方法,可以直接实例化。错 5、对static方法的调用可以不需要类实例。对 6、包含抽象方法的类一定是抽象类。对 7、方法中的形参可以和方法所属类的属性同名。对 8、接口无构造器,不能有实例,也不能定义常量。错 9、类的实例对象的生命周括实例对象的创建、使用、废弃、垃圾的回收。对 10、Java应用程序的入口main方法只有一种定义法。对 二、选择题 1、下列答案正确的是(A ) A) 在同一个Java源文件中可以包含多个类,只能有一个被声明为public B) 在同一个Java源文件中只能包含一个类,并被声明为public C) 在同一个Java源文件中可以包含多个类,都可以被声明为public D) 在同一个Java源文件中可以包含多个类,只能有一个被声明为default 2、Java实现动态多态性是通过( B )实现的。 A) 重载B) 覆盖 C) 接口D) 抽象类 3、下列哪一个是正确的方法重载描述( A ) A) 重载方法的参数类型必须不同 B) 重载方法的参数名称必须不同 C) 返回值类型必须不同 D) 修饰词必须不同 4、final关键字不可以用来修饰( D ) A) 类B) 成员方法 C) 域D) 接口 5、接口的所有成员方法都具有( B )属性 A) private, final B) public, abstract C) static, protected D) static 6、Java的封装性是通过(A )实现的 A) 访问控制B) 设计内部类 C) 静态域和静态方法D) 包 7、下列接口或类不属于.*包的是( D ) A) Collection B)Vector C) Map D) Integer 8、下述哪一组方法,是一个类中方法重载的正确写法( A ) A) int addValue( int a, int b ){return a+b;}

国家开放大学《阅读与写作(1)》形考作业参考答案

国家开放大学《阅读与写作(1)》形考作业参考答案 形考任务1 一、名词解释 1.社会学阅读——社会学阅读就是用社会学的观点和方法阅读作品,研究具体作品与文章作者、社会环境的关系,从而发掘作品的时代意义、政治意义、社会意义和思想意义的阅读方法。 2.文化学阅读——文化学阅读就是用文化学的观点和方法通过文字语言解读作品的文化内涵,通过习俗制度透视作品的思想原则,通过经济结构透视作品的价值观念,通过科学技术透视作品的哲学基础,通过文学艺术透视作品的审美趣味的阅读方法。 3.语义学阅读——语义学阅读就是以文本为基础,从字、词、句含义的释读入手,细致分析表达技巧,层层解剖内在的结构层次,全力开掘多方面主题内涵的阅读方法。 4.接受美学阅读——接受美学就是以读者为中心,注重作品意义空白或不确定性,重视作品价值的两极组合。 5.律诗——律诗是近体诗的一种,每篇句数、字数、平仄、用韵、对仗等都有一定规定,主要包括五律、七律两种。押韵上偶句押韵、首句可押可不押;对仗上,颔联、颈联必须对仗。 6.寓言——一种含有讽谕意义的短小故事,本质是以故事的感性形式来表现思想的理性内核。 二、简答题 1.小说的文体特征 参考答案: 以叙述和描写笔法为主,采用灵活多样的艺术表现手法;通过情节细腻完整地刻画人物性格;允许进行艺术虚构。 2.学术论文的创造性和文献性 参考答案: 创造性论文反映作者对客观事物研究的独到理解和观点,新理论、新设想、

新方法、新定理,甚至能够填补某个领域的空白。(有没有创造性,是决定论文价值的一个根本标准。) 文献性学术论文可以长期保存,供检索和查阅,作为后人进行更深入研究、探讨时的借鉴,具有长期使用、参考的价值。 3.文化学解读的主要方法 参考答案: (1)通过文字语言解读作品的文化内涵。 (2)通过习俗制度透视作品的思想原则。 (3)通过经济结构透视作品的价值观念。 (4)通过科学技术透视作品的哲学基础。 (5)通过文学艺术透视作品的审美趣味。 4.接受美学阅读的基本特征 参考答案: (1)以读者为中心。 (2)文本的召唤结构。 (3)意义空白或不确定性。 (4)作品价值的两极组合。 三、论述题 1.运用诗歌的鉴赏方法,解读李白的诗《将进酒》。 参考答案: 诗歌的基本特征是节奏和音韵美,强烈的抒情性丰富的艺术想象和独特的艺术手法。李白的《将进酒》充分体现了这些特点。 从节奏和音韵的角度看,整散结合的句式使诗歌具有强烈而富于变化的节奏,如“君不见黄河之水天上来,奔流到海不复回。君不见高堂明镜悲白发,朝如青丝暮成雪”等长句节奏舒缓,而“岑夫子,丹邱生,将进酒,杯莫停”等短句又使节奏变得急促有力。用韵上同中有变。全诗主要用ui韵,但又不是一韵到底。 从情感上讲,本诗具有极强的抒情性,尽管诗中有明显的不满和消极的情绪,但主要表达他乐观自信,放纵不羁的精神和情感。 从艺术的角度看,本诗大胆想象,如将黄河之水想象成“天上来”等等。

《C面向对象程序设计》谭浩强版复习总结

第一章C++ 基础 endl 换行并刷新输出流 setw(n) 设置字段位数为n hex,oct,dec 十六进制,八进制,十进制表示 setfill 定义填充字符 setprecision 定义浮点数的精度 left,right 左对齐,右对齐 showpoint 强制显示小数点以及全部尾部0 C++通过给常量命名的方式定义常量: const<数据类型名><常量名>=<表达式> 用const定义的标识符常量时,一定要对其初始化。在说明时进行初始化是对这种常量置值的唯一方法,不能用赋值运算符对这种常量进行赋值。 函数声明的一般形式为 函数类型函数名(参数表) 函数模板的定义 template 函数定义 例子:template T max(T a,T b){ return(a>b)? a:b; } 定义函数模板时可以使用多个类型参数,每个类型参数前面只需加上关键字typename或class,用逗号分隔: template

例子:template T1 max(T1 a,T2 b){ return (a>b) ? a : (T1)b; } 有默认参数的函数:实参与形参的结合是从左至右进行的,因此指定默认值的参数必须放在形参列表中的最右端 引用 定义对变量起另外一个名字(别名alias),这个名字称为该变量的引用。 <类型> &<引用变量名> = <原变量名>; 其中原变量名必须是一个已定义过的变量。如: int max ; int &refmax=max; refmax并没有重新在内存中开辟单元,只是引用max的单元。max与refmax在内存中占用同一地址,即同一地址两个名字。 对引用类型的变量,说明以下几点: 1、引用在定义的时候要初始化 2、对引用的操作就是对被引用的变量的操作。 3、引用类型变量的初始化值不能是一个常数。 4、一旦引用被声明,它就不能再指向其它的变量。 5、对引用的初始化,可以用一个变量名,也可以用另一个引用。 6、引用同变量一样有地址,可以对其地址进行操作,即将其地址赋给一指针。 当&m的前面有类型符时(如int &m),它必然是对引用的声明;如果前面无类型符(如cout<<&m),则是取变量的地址。 7、对常量(用const声明)的引用使用如下方式: int i=5; const int &a=i;

计算机操作系统第七章作业及答案

计算机操作系统第七章 作业及答案 WTD standardization office【WTD 5AB- WTDK 08- WTD 2C】

5、为什么在大多数OS中都引入了“打开”这一文件系统调用?打开的含义是什么? 当用户要求对一个文件实施多次读/写或其它操作时,每次都要从检索目录开始,浪费时间,低效。为了避免多次重复地检索目录,在大多数OS中都引入了“打开”这一文件系统调用。 当用户第一次请求对某文件进行操作时,先利用“打开”系统调用将该文件打开,磁盘索引结点被拷贝到内存中,后面的目录检索都在内存中进行。 7、按文件的组织方式可将文件分为哪几种类型? 从逻辑结构可以将文件分为两大类:有结构的记录式文件和无结构的流式文件。按文件的组织方式,可以将有结构的文件分为三类: (1) 顺序文件,指由一系列记录按某种顺序排列所形成的文件,其中的记录可以是定长记录或变长记录; (2) 索引文件,指为变长记录建立一张索引表,为每个记录设置一个表项,以加快对记录检索的速度。 (3) 索引顺序文件,这是顺序文件和索引文件相结合的产物。它为文件建立一张索引表,为每一组记录中的第一个记录设置一个表项,以缩短索引表的长度,而记录检索的速度也不很慢。 16、目前广泛采用的目录结构是哪种?它有什么优点? 广泛采用的目录结构是树型目录结构,它的主要优点是:层次结构清晰,便于文件管理和保护;有利于文件分类;解决重名问题;提高文件检索速度;能进行存取权限的控制。 23、基于符号链的文件共享方式有何优点?

只是文件主才拥有指向其索引结点的指针;而共享该文件的其他用户,则只有该文件的路径名,并不拥有指向其索引结点的指针。当文件的拥有者把一个共享文件删除后,其他用户试图通过符号链去访问一个已被删除的共享文件时,会因系统找不到该文件而使访问失败,于是用户再将符号链删除,因此不存在文件删除问题/指针悬空问题。 补充题、 文件系统中,保护域简称为“域”。保护域是进程对一组对象访问权的集合,进程只能在指定域内执行操作。 进程和域之间可以是一对多的关系,即一个进程可以动态地联系多个域。可以将进程的运行分为若干个阶段,一个阶段联系一个域。这样可以根据运行的实际需要来规定进程运行的每个阶段中所能访问的对象。

面向对象程序设计课后答案(完整版)

第二章2-4 #include using namespace std; Add(int a,int b); int main() { int x,y,sum; cout<<"please input x and y:"; cin>>x>>y; sum = add(x,y); cout < using namespace std; int main() {

int *p,*init; int countp=0; int countn=0; p = new int[20]; init = p; for(int i=0;i<20;i++) { cin>>*p; p++; } p = p-20; for( i=0;i<20;i++) { if(*p>0) countp++; if(*p<0) countn++; cout<<*p<<" "; p++; } cout<<"正数有:"< //#include using namespace std; void checkagescore(string name,int age) { if (name == "exit") throw name; if(age<0||age>50) throw age;

国家开放大学学习指南(形考作业题目与参考答案)

国家开放大学学习指南(形考作业题目与答案) 活动一:认识国家开放大学(形考作业1) 一、多选题(每题5分,共计10分) 题目1:同学们,在学习了“任务一”的相关内容后,请将你认为适合描述为国家开放大学特色的选项选择出来。(BCDE) A. 国家开放大学是一所与普通高校学习方式相同的大学 B. 国家开放大学是一所在教与学的方式上有别与普通高校的新型大学 C. 国家开放大学是基于信息技术的特殊的大学 D. 国家开放大学可以为学习者提供多终端数字化的学习资源 E. 国家开放大学是为没有条件参与全日制校园学习的人群提供学习资源的大学 F. 国家开放大学的学习参与活动必须要到校园中和课堂上 题目2:请将下列适用于国家开放大学学习的方式选择出来。(ABCD) A. 利用pad、手机等设备随时随地学习 B. 在集中面授课堂上向老师请教问题 C. 在网络上阅读和学习学习资源 D. 在课程平台上进行与老师与同学们的交流讨论 二、判断题(每题2分,共计10分) 题目3:制定时间计划,评估计划的执行情况,并根据需要实时地调整计划,是管理学习时间的有效策略。(“对”) 题目4:在国家开放大学的学习中,有课程知识内容请教老师,可以通过发email、QQ群、课程论坛等方式来与老师联络。(“对”) 题目5:远程学习的方法和技能比传统的课堂学习简单,学习方法并不重要。(“错”) 题目6:纸质教材、音像教材、课堂讲授的学习策略都是一样的。(“错”) 题目7:在网络环境下,同学之间、师生之间无法协作完成课程讨论。(“错”) 活动二:完成专业学习(形考作业2) 一、单选题(每题2分,共计10分) 题目1:开放大学学制特色是注册后(D)年内取得的学分均有效。 选择一项: A. 10 B. 3 C. 5 D. 8 题目2:请问以下是专业学习后期需要完成的环节?(D) 选择一项: A. 了解教学计划 B. 入学测试 C. 课程形成性评价 D. 专业综合实践 题目3:请问以下不是专业学位授予的必备条件?(D) 选择一项: A. 通过学位英语考试 B. 课程成绩达到学位授予的相关要求

面向对象程序设计笔记

undeclared identifier “未声明的标识符” (1) 十进制整数:在一个整型常量后面加一个字母 l 或 L,则认为是 long int 型常量? (2) 八进制整数?在常数的开头加一个数字 0,就表示这是以八进制数形 式表示的常数? (3)十六进制整数?在常数的开头加一个数字0和一个英文字母X(或x), 就表示这是以十六进制数形式表示的常数? 2. 浮点数的表示方法 如果在实数的数字之后加字母 F 或f,表示此数为单精度浮点数,如1234F,-43f,占 4 个字节?如果加字母 L 或 l,表示此数为长双精度数(long double), 在Visual C++ 6.0 中占 8 个字节. (2) 指数形式(即浮点形式):用字母 e 表示其后的数是以 10 为底的幂,如 e12 表示 1012? 1.普通的字符常量:用单撇号括起来的一个字符就是字符型常量如′a′,′ #′,′%′,′D′都是合法的字符常量,在内存中占一个字节?“cout<<′\n′; ”将输出一个换行,其作用与“cout<

民法学(1)形考作业4参考答案

民法学(1)形考作业4参考答案 同学们:大家好! 完成此次作业首先需要大家对教材第五至第八章内容进行学习,之后才能作以下作业: 一、名词解释 1、宣告死亡:是指公民下落不明达到法定期限,经利害关系人申请,又人民法院宣告该公民死亡的民事法律制度。 2、表见代理:指无权代理人的代理行为客观上存在使相对人相信其代理权的情况,且相对人主观上为善意且无过失,因而可以向被代理人主张代理的效力。 3、诉讼时效:指权利人在法定期间若不行使权利就丧失请求人民法院保护其民事权利的可能性的制度。 4、善意取得:是指无权处分他人动产的占有人,在不法将动产转让给第三人以后,如果受让人在取得该动产时出于善意,就可依法取得对该动产的所有权,受让人在取得动产的所有权以后,原所有人不得要求受让人返还财产,而只能请求转让人(占有人)赔偿损失。 5、按份共有:是指两个或两个以上的共有人按照各自的份额分别对共有财产享有权利和承担义务的一种共有关系。 6、相邻关系:是两个或两个以上相互毗邻的不动产的所有人或使用人,在行使不动产所有权或使用权,因相邻各方应当给与便利和接受限制而发生的权利义务关系。 提示:名词解释是比较容易的题型,通常大家不会有什么问题。 二、填空题(每空1分,共23分) 1.民事法律关系的要素包括主体、内容、客体三个要素。 2.民法通则规定16周岁以上不满18周岁的公民,以自己的劳动收入为主要生活来源的,视为完全民事行为能力人。 3.法人的民事权利能力和民事行为能力,从法人成立时产生,到法人终止时终止。 4.货币是固定地充当一般等价物的特殊商品,属于具有特殊作用的种类物。 5.我国民法是调整平等主体的公民之间、法人之间、公民和法人之间的财产关系和人身关系的法律规范的总和。 6.《民法通则》第4条规定,民事活动应当遵循自愿公平、等价有偿、诚实信用的原则。 7.诉讼时效中止的法定事由有:(1) 不可抗力 (2) 其他障碍。 8.传统民法将他物权分为用益物权和担保物权。 9.财产所有权合法取得的方式可以分为原始取得、继受取得。 10.房屋典权是典权人支付典价,占有出典人的房屋,并对其进行占有、使用、收益的权利。 提示:填空题答案是唯一的,以上答案都可在教材中找到。 三、选择题(每小题2分,共20分。 1.民法通则规定限制民事行为能力是指( AC )。 A.10周岁以上的未成年人B.14周岁以上的未成年人 C.不能完全辨认自己行为的精神病人D.不能辨认自己行为的精神病人 2.张某不习水性,不慎落水急忙呼救,杨某经过,要求张某付1万元人民币方救张某,张无奈同意付钱,杨某遂将张某救上岸,其要求付钱行为是(BD )。 A.有效的民事法律行为B.无效的民事行为 C.可撤销的民事行为D.乘人之危的民事行为

《面向对象程序设计C 》期末考试试卷

《面向对象程序设计C++》期末考试试卷 一、选择题(每小题3分,共48分。) 01、下列关于C++函数的叙述中,正确的是( C )。 A)每个函数至少要具有一个参数 B)每个函数都必须返回一个值 C)函数在被调用之前必须先声明 D)函数不能自己调用自己 02、下列关于类和对象的叙述中,错误的是( A )。 A)一个类只能有一个对象 B)对象是类的具体实例 C)类是对某一类对象的抽象 D)类和对象的关系是一种数据类型与变量的关系 03、在C++中,用于实现运行时多态性的是( D )。 A)内联函数 B)重载函数 C)模板函数D)虚函数 04、下列关于运算符重载的叙述中,正确的是( B )。 A)通过运算符重载,可以定义新的运算符 B)有的运算符只能作为成员函数重载 C)若重载运算符+,则相应的运算符函数名是+ D)重载二元运算符时,必须声明两个形参 05、对于语句 cout<

相关文档
相关文档 最新文档