文档库 最新最全的文档下载
当前位置:文档库 › C 第六章习题解答[1]

C 第六章习题解答[1]

C  第六章习题解答[1]
C  第六章习题解答[1]

第六章模板与数据结构习题

一、.基本概念与基础知识自测题

6.1 填充题

6.1.1 模板是为了实现代码的(1),它把数据类型改为一个(2),称为(3)程

序设计。模板包括(4)和(5)。

答案:(1)重用

(2)设计参数

(3)参数化(parameterize)

(4)函数模板(function template)

(5)类模板(class template)

6.1.2 调用函数模板时,可以显式指定模板参数类型,也可以隐式进行,称为(1),这是

根据(2)来决定的。

答案:(1)模板实参推演(template argument deduction)

(2)一组实际类型或(和)值

6.1.3 顺序查找可以用于(1)线性表,而对半查找可以用于(2)线性表。

答案:(1)无序的(所有)

(2)有序的

6.1.4 最常见的排序方式有(1)、(2)和(3)。如果现有一个已排好序的线

性表,在表尾添加了一个元素,采用(4)排序法使它重新成为有序的所需工作量最小。

答案:(1)选择

(2)插入

(3)交换

(4)交换(可利用原来的有序性)

6.1.5 给出以下指针的说明方式:指向一个4元素整型数组的指针为(1);指向一个返

回整型数,参数为两个整型数的函数的指针(2);指向一个数组的指针,而该数组元素都是指向一个返回整型指针的无参函数(3)。

答案:(1)int(*p)[4]

(2)int(*p)(int,int)

(3)以指向6元素数组为例:int*(*)() (*p)[6]

6.2简答题

6.2.1需要编写一个对多维数组通用的算法(即各维的大小未定),怎样才能把实参多维数

组的信息全部传递到函数中去?

答:最佳方法是用函数模板,多维数组用模板类型参数传递,各维的大小作为参数传递。也可以用一维数组加各维的大小都作为参数传递。

6.2.2什么叫函数模板?什么叫模板函数?什么叫类模板?什么叫模板类?

答:不受数据类型限制的通用型的函数使代码的可重用性大大提高。把数据类型改为

2

一个设计参数是一个可行的方案。这种程序设计类型称为参数化(Parameterize) 程序设计。这样的软件模块由模板(Template) 构造。包括函数模板和类模板。

函数模板定义如下:

template<模板参数表> 返回类型函数名(形式参数表){

……;//函数体

}

模板参数主要是模板类型参数。模板类型参数代表一种潜在的内置或用户定义的类型,由关键字typename或class后加一个标识符构成。函数模板可以用来创建一个通用功能的函数,以支持多种不同形参,简化重载函数的设计。

由调用函数模板(functron template) 而生成的函数,称为模板函数(template function)。

类模板定义如下:

template<模板参数表> class类名{

……;//类声明体

};

模板参数有两种:模板类型参数和模板非类型参数。模板类型参数(template type parameter),它代表一种类型,由关键字typename或class后加一个标识符。模板非类型参数由一个普通的参数声明构成。模板非类型参数表示该参数名代表了一个潜在的常量。如数组类模板,可以有一个数组长度的非类型参数。

为通用的类模板定义中的模板类型参数指定了具体类型而生成的类称为模板类。

6.2.3什么叫线性表?其基本操作包括哪些?其中插入一个元素的关键在哪儿?

答:线性表是数据结构中的概念:每两个相邻元素之间都有直接前驱和直接后继的关系。这里除第一个元素外,其他元素有且仅有一个直接前驱,第一个元素没有前驱;除最后一个元素外,其他元素有且仅有一个直接后继,最后一个元素无后继。这样的特性称为线性关系。

基本操作包括:计算表长度,寻找变量或对象x(其类型与表元素相同)在表中的位置(下标值),判断x是否在表中,删除x,将x插入列表中第i个位置,寻找x的后继,寻找x的前驱,判断表是否空,判断表是否满,取第i个元素的值等。

当需要在顺序表的指定位置i插入一个数据x时,必须为它腾出这个位置,把从该位置开始向后的所有元素数据,后移一个位置,最后才插入。关键是后移时从最后一个元素开始。否则先移的数据会冲掉未移的数据。

6.2.4采用索引查找有哪些优点?它需要被查找数据有序吗?

答:索引,就象一本书的目录,找到标题,再看一下页号,立即可以翻到。索引查找不要求被查找数据有序,只要求索引有序。

6.2.5简单叙述阅读理解复杂指针的方法。设Node为类,下面两个标识符fa和pa分别代

表什么?Node* (*fa(int))(); Node* (*(*pa)[])();

答:理解和构造对象说明的方法是:先撇开标识符,按从右到左的顺序逐个解释每个说明符,如果有括号则改变解释的先后,先解释括号内再解释括号外。

fa是有一个整型参数的函数,其返回值是指针,该指针是指向无参函数的指针,而该无参函数的返回值是指向Node类的指针。pa是指向数组的指针,该数组的元素均为函数指针,所指向的函数无参、返回值是指向Node类的指针。

二、.编程与综合练习题

2

第六章模板与数据结构题 3

6.3 使用自定义字符串类,编写求数组元素中最大值的函数模板。

解:函数模板有三种应用方式:

1.类模板的成员函数,在模板类型参数中重载函数和运算符,直接访问私有数据成员,实现通用算法。这是标准的面向对象的方法。

2.函数模板处理模板类,以类模版为参数,用模板类型参数中重载的函数或运算符,实现通用算法。但调用类模板的接口函数间接访问私有数据成员,也是常见的。

3.函数模板处理普通数据,往往要用函数作为参数,实现通用算法。这是面向过程的方法。解:使用独立的函数模板,相对简单。

#include

using namespace std;

const int n=256;

class mystring{//为简单只保留用到的函数

char str[n]; //存放字符串的数组容器

int maxsize; //最大可用元素数,可防止数组出界,提高健壮性

int last; //已用元素数

public:

mystring(){

last=-1;

maxsize=n;

str[0]='\0';

cout<<"缺省构造函数"<

}

mystring(char *s){//当C字符串过长,初始化时采用截尾处理

last=-1;

maxsize=n;

do{

last++;

str[last]=s[last];

}while(s[last]!='\0'&&last

str[last] ='\0'; //截尾处理时,必须加串结束符

cout<<"构造函数"<

}

mystring(mystring & ms){

last=-1;

maxsize=n;

do{

last++;

str[last]=ms.str[last];

}while(last

cout<<"拷贝构造函数"<

}

~mystring(){

cout<<"析构函数"<

}

4

void show(){//如需重载<<,则请参见9.3节,暂时未学到,替代方法是改用show()函数cout<

}

mystring & operator=(char * ms);//这里重载的=是把C风格字符串赋给mystring

mystring& operator=(mystring &);

bool operator<(mystring &);

};

mystring & mystring::operator=(char* ms){ //用C字符串赋值自定义字符串

last=-1;

do{

last++;

str[last]=ms[last];

}while(ms[last]!='\0'&&last

str[last] ='\0'; //截尾处理时,必须加串结束符

return *this;

}//这里返回值为引用,不调用拷贝构造函数

mystring& mystring::operator=(mystring & ms){

last=-1;

do{

last++;

str[last]=ms.str[last];

}while(last

cout<<"赋值函数"<

return *this;

}

bool mystring::operator<(mystring & ms){

int i=0,k;

do{

k=str[i]-ms.str[i];

i++;

}while(k==0&&i

if(k<0) return true;

if(i==last&&i!=https://www.wendangku.net/doc/b0362058.html,st) return true;

return false;

}

template Groap max(Groap *r_array,int size){//这里是一个独立的函数模板Groap max_val=r_array[0];

for (int i=1;i

return max_val;

}

int main(){

int i;

char sp[6][10]=

{"南京大学","东南大学","交通大学","清华大学","天津大学","复旦大学"};

4

第六章模板与数据结构题 5

mystring ms[6];// 对象数组

for(i=0;i<6;i++) ms[i]=sp[i];

cout<<"打印学校名称:"<

for(i=0;i<6;i++) ms[i].show();

cout<<"按字典序查找校名:"<

(max(ms,6)).show();

return 0;

}

6.4 将自定义字符串类用于对半查找的函数模板。

解1:为简化,使用独立的函数模板

#include

using namespace std;

const int n=256;

class mystring{//为简单只保留用到的函数

char str[n]; //存放字符串的数组容器

int maxsize; //最大可用元素数,可防止数组出界,提高健壮性

int last; //已用元素数

public:

mystring(){

last=-1;

maxsize=n;

str[0]='\0';

cout<<"缺省构造函数"<

}

mystring(char *s){//当C字符串过长,初始化时采用截尾处理

last=-1;

maxsize=n;

do{

last++;

str[last]=s[last];

}while(s[last]!='\0'&&last

str[last] ='\0'; //截尾处理时,必须加串结束符

cout<<"构造函数"<

}

mystring(mystring & ms){

last=-1;

maxsize=n;

do{

last++;

str[last]=ms.str[last];

}while(last

cout<<"拷贝构造函数"<

}

6

~mystring(){

cout<<"析构函数"<

}

void show(){//如需重载<<,则请参见9.3节,暂时未学到,替代方法是改用show()函数cout<

}

mystring & operator=(char * ms);//这里重载的=是把C风格字符串赋给mystring

mystring& operator=(mystring &);

bool operator<(mystring &);

};

mystring & mystring::operator=(char* ms){ //用C字符串赋值自定义字符串

last=-1;

do{

last++;

str[last]=ms[last];

}while(ms[last]!='\0'&&last

str[last] ='\0'; //截尾处理时,必须加串结束符

return *this;

}//这里返回值为引用,不调用拷贝构造函数

mystring& mystring::operator=(mystring & ms){

last=-1;

do{

last++;

str[last]=ms.str[last];

}while(last

cout<<"赋值函数"<

return *this;

}

bool mystring::operator<(mystring & ms){

int i=0,k;

do{

k=str[i]-ms.str[i];

i++;

}while(k==0&&i

if(k<0) return true;

if(i==last&&i!=https://www.wendangku.net/doc/b0362058.html,st) return true;

return false;

}

template int BinarySearch(T *array,T & x,int size){//独立的函数模板int high=size-1 ,low=0,mid; // size 当前有序表元素数量

while(low<=high){

mid=(low+high)/2;

if(x

else if(array[mid]

6

第六章模板与数据结构题7

else return mid;

}

return mid;

}

int main(){//此例为了简化未用对象数组类模板

int i;

char sp[6][10]=

{"东南大学","复旦大学","交通大学","南京大学","清华大学","天津大学"};

mystring ms[6],x="交通大学",y="南京大学";

for(i=0;i<6;i++) ms[i]=sp[i];

for(i=0;i<6;i++) ms[i].show();

i=BinarySearch(ms,x,6);

cout<

i=BinarySearch(ms,y,6);

cout<

return 0;

}

解2:函数模板使用成员函数(ep6_4_0.cpp)

#include

using namespace std;

const int n=256;

class mystring{//为简单只保留用到的函数

char str[n]; //存放字符串的数组容器

int maxsize; //最大可用元素数,可防止数组出界,提高健壮性

int last; //已用元素数

public:

mystring(){

last=-1;

maxsize=n;

str[0]='\0';

cout<<"缺省构造函数"<

}

mystring(char *s){//当C字符串过长,初始化时采用截尾处理

last=-1;

maxsize=n;

do{

last++;

str[last]=s[last];

}while(s[last]!='\0'&&last

str[last] ='\0'; //截尾处理时,必须加串结束符

cout<<"构造函数"<

}

mystring(mystring & ms){

8

last=-1;

maxsize=n;

do{

last++;

str[last]=ms.str[last];

}while(last

cout<<"拷贝构造函数"<

}

~mystring(){

cout<<"析构函数"<

}

void show(){//如需重载<<,则请参见9.3节,暂时未学到,替代方法是改用show()函数cout<

}

mystring & operator=(char * ms);//这里重载的=是把C风格字符串赋给mystring

mystring& operator=(mystring &);

bool operator<(mystring &);

};

mystring & mystring::operator=(char* ms){ //用C字符串赋值自定义字符串

last=-1;

do{

last++;

str[last]=ms[last];

}while(ms[last]!='\0'&&last

str[last] ='\0'; //截尾处理时,必须加串结束符

return *this;

}//这里返回值为引用,不调用拷贝构造函数

mystring& mystring::operator=(mystring & ms){

last=-1;

do{

last++;

str[last]=ms.str[last];

}while(last

cout<<"赋值函数"<

return *this;

}

bool mystring::operator<(mystring & ms){

int i=0,k;

do{

k=str[i]-ms.str[i];

i++;

}while(k==0&&i

if(k<0) return true;

if(i==last&&i!=https://www.wendangku.net/doc/b0362058.html,st) return true;

8

第六章模板与数据结构题9

return false;

}

template class Orderedlist{

int maxsize;

int last;

T slist[size];

public:

int getlast(){return last;}

T getslist(int k){return slist[k];}

void putslist(T t,int k){slist[k]=t;}

Orderedlist(){last=-1;maxsize=size;}

bool Insert(T & elem,int i);

void print();

int BinarySearch(T);

// 无关成员函数省略,缺省的=等不必定义

};//再次指出分号不可少

template bool Orderedlist::Insert(T & elem ,int i){ if (i<0||i>last+1||last==maxsize-1) return false;

else{

last++;

for (int j=last;j>i;j--) slist[j]=slist[j-1];

slist[i]=elem;

return true;

}

}

template void Orderedlist::print(){

int i;

for(i=0;i<=last;i++){

slist[i].show();

if(i%5==4) cout<

else cout<<'\t';

}

cout<

}

template int Orderedlist::BinarySearch(T x){//成员函数模板int high=last,low=0,mid; //size当前有序表元素数量

while(low<=high){

mid=(low+high)/2;

if(x

else if(slist[mid]

else return mid;

}

return mid;

}

10

int main(){

const int h=8;

int i;

Orderedlist ordlist;

mystring n[h];

char sp[h][10]={"东南大学","复旦大学","交通大学","南京大学","清华大学", "天津大学","同济大学","浙江大学"};

for(i=0;i

for(i=0;i

cout<<"排序表:"<

ordlist.print();

mystring x("交通大学"),y("东南大学");

i=ordlist.BinarySearch(x);

cout<

i=ordlist.BinarySearch(y);

cout<

return 0;

}

6.5 编一个冒泡排序的成员函数模板实现降序排序。可用小于比较,冒泡采用从上往下;

也可用大于比较,冒泡采用从下往上。

解:用小于比较,冒泡采用从上往下。使用字符串类string。

#include

#include

using namespace std;

template class Orderedlist{

int maxsize;

int last;

T slist[size];

public:

Orderedlist(){last=-1;maxsize=size;}

void BubbleSort();

bool Insert(T & elem,int i);

void print();

// 无关成员函数省略,缺省的=等不必定义

};//再次指出分号不可少

template bool Orderedlist::Insert(T & elem ,int i){ if (i<0||i>last+1||last==maxsize-1) return false;

else{

last++;

for (int j=last;j>i;j--) slist[j]=slist[j-1];

slist[i]=elem;

return true;

}

10

第六章模板与数据结构题11

}

template void Orderedlist::print(){

int i;

for(i=0;i<=last;i++){

cout<

if(i%5==4) cout<

else cout<<'\t';

}

cout<

}

template void Orderedlist::BubbleSort(){//降序bool noswap;

int i,j;

T temp;

for (i=last;i>0;i--){//从上往下冒泡,对比例6.8有何不同?

noswap=true; //未交换标志为真

for(j=0;j

if(slist[j]

temp=slist[j];

slist[j]=slist[j+1];

slist[j+1]=temp;

noswap=false;

}

}

if(noswap) break; //本趟无交换,则终止算法。

}

}

int main(){

const int h=8;

int i;

Orderedlist ordlist;

string n[h];

string sp[h]={"南京大学","东南大学","交通大学","清华大学",

"天津大学","复旦大学","浙江大学","同济大学"};

for(i=0;i

for(i=0;i

cout<<"未排序表:"<

ordlist.print();

ordlist.BubbleSort();

cout<<"已排序表:"<

ordlist.print();

return 0;

}

12

6.6 现有两个已升序排好的数组,将它们合并为一个升序排序的数组(归并),请用函数模

板实现。该方法可以演变成归并排序。

算法:两数组合并时,可为每个数组各安排一个指针,从第一个元素开始比较两数组对应元素,小的取下来,顺序放入新的数组;取下所指元素的指针后移,再比较,依此类推;直到其中一个数组的元素已全部放入新数组,再把另一数组余下的元素全部顺序放入新数组,归并完成。

解:此处是面向对象的方法

#include

#include

using namespace std;

template class Orderedlist{

int maxsize;

int last;

T slist[size];

public:

Orderedlist(){last=-1;maxsize=size;}

void BubbleSort();

bool Insert(T & elem,int i);

void print();

void Merge(Orderedlist &,Orderedlist &);

// 无关成员函数省略,缺省的=等不必定义

};//再次指出分号不可少

template bool Orderedlist::Insert(T & elem ,int i){ if (i<0||i>last+1||last==maxsize-1) return false;

else{

for (int j=last;j>i;j--) slist[j]=slist[j-1];

slist[i]=elem;

last++;

return true;

}

}

template void Orderedlist::print(){

int i;

for(i=0;i<=last;i++){

cout<

if(i%5==4) cout<

else cout<<'\t';

}

cout<

}

template void Orderedlist::BubbleSort(){//升序bool noswap;

int i,j;

T temp;

12

第六章模板与数据结构题13

for (i=last;i>0;i--){//从上往下冒泡,对比例6.8有何不同?

noswap=true; //未交换标志为真

for(j=0;j

if(slist[j+1]

temp=slist[j];

slist[j]=slist[j+1];

slist[j+1]=temp;

noswap=false;

}

}

if(noswap) break; //本趟无交换,则终止算法。

}

}

template void Orderedlist::Merge(Orderedlist & ls1,Orderedlist & ls2){

int i=0,j=0,k=0;

while((i<=https://www.wendangku.net/doc/b0362058.html,st)&&(j<=https://www.wendangku.net/doc/b0362058.html,st)){

if(ls1.slist[i]

else {slist[k]=ls2.slist[j];j++;}

k++;last++;

}

while(i<=https://www.wendangku.net/doc/b0362058.html,st) {//复制第一个表的剩余元素

slist[k]=ls1.slist[i];i++;

k++;last++;

}

while(j<=https://www.wendangku.net/doc/b0362058.html,st) {//复制第二个表的剩余元素

slist[k]=ls2.slist[j];j++;

k++;last++;

}

}

int main(){

const int h=15;

int i,h1=8,h2=5;

Orderedlist ordlist,ordlist1,ordlist2;

string n[h],m[h];

char sp1[h][10]={"南京大学","东南大学","交通大学","清华大学","天津大学","复旦大学",

"浙江大学","同济大学"};

for(i=0;i

for(i=0;i

cout<<"未排序表:"<

ordlist1.print();

ordlist1.BubbleSort();

14

cout<<"已排序表:"<

ordlist1.print();

char sp2[h][10]={"南开大学","吉林大学","中山大学","武汉大学","科技大学"};

for(i=0;i

for(i=0;i

cout<<"未排序表:"<

ordlist2.print();

ordlist2.BubbleSort();

cout<<"已排序表:"<

ordlist2.print();

ordlist.Merge(ordlist1,ordlist2);

cout<<"归并已排序表:"<

ordlist.print();

return 0;

}

6.7 希尔排序(shell sort),又称缩小增量排序(diminishing increment sort)。其思想如下:

设线性表L长度为n,取增量gap=n/2,即以L[0]和L[gap]为一组,L[1]和L[gap+1]为一组,L[2]和L[gap+2]为一组,……,L[n-gap]和L[n]为一组,分别进行插入排序。

再取gap=gap/2,则分组成为L[0],L[gap],L[2gap],……为一组,L[1],L[gap+1],L[2gap+1],……为一组,等等,分别进行插入排序。直到gap=1,这时分组成为整个表,并只有一个组,再插入排序,完成全部任务。参见下图:

初始20 26 49 21 15 6

1 20 ––21 分组1,gap=3

26 ––15 分组2

49 –– 6 分组3

20 15 6 21 26 49 结果

2 20 15 6 21 26 49 gap=1

6 15 20 21 26 49 结果

全部采用函数模板,包括希尔插入子程序。分组直接用增量控制在原线性表中进行

插入排序。

解:本解希尔排序是成员函数,是C++的标准用法,标准模板库(STL)就是如此用的。是纯面向对象的方法

#include

#include

using namespace std;

template class Orderedlist{

int maxsize;

int last;

T slist[size];

void Shellinsert(const int);

public:

14

第六章模板与数据结构题15

int getlast(){return last;}

T getslist(int k){return slist[k];}

void putslist(T t,int k){slist[k]=t;}

Orderedlist(){last=-1;maxsize=size;}

bool Insert(T & elem,int i);

void print();

void Shellsort();

// 无关成员函数省略,缺省的=等不必定义

};//再次指出分号不可少

template bool Orderedlist::Insert(T & elem ,int i){ if (i<0||i>last+1||last==maxsize-1) return false;

else{

for (int j=last;j>i;j--) slist[j]=slist[j-1];

slist[i]=elem;

last++;

return true;

}

}

template void Orderedlist::print(){

int i;

for(i=0;i<=last;i++){

cout<

if(i%5==4) cout<

else cout<<'\t';

}

cout<

}

template void Orderedlist::Shellsort(){//成员函数int gap=(last+1)/2;

while(gap){

Shellinsert(gap);//一趟排序

gap/=2;

}

}

template void Orderedlist::Shellinsert(const int gap){ int i,j;

T temp;

//注意每一趟排序包含若干子序列,其中第一个子序列第一个元素是0号,第二个元素是gap号,//插入排序认为单个元素是排好序的,所以从每个子序列的第二个元素开始插入排序。

for(i=gap;i<=last;i++){//从第一个子序列开始直接插入排序,但不是完成一个子序列,//再做下一个子系列,而是先做每个子序列的第一步,再做每个子序列的第二步,等等,

//穿插完成。直接插入排序总是从后逐个向前,找到第一个比待插元素大的,则插在前面。

temp=slist[i];//待插元素放temp中

j=i;

16

while(j>=gap&&temp

slist[j]=slist[j-gap];//找的元素,只要比temp大,就后移,空出位置

j-=gap;

}

slist[j]=temp;//将temp插入正确的空位

}

}

int main(){

const int h=8;

int i;

Orderedlist ordlist;

string n[h];

char sp[h][10]={"南京大学","东南大学","交通大学","清华大学","天津大学","复旦大学", "浙江大学","同济大学"};

for(i=0;i

for(i=0;i

cout<<"未排序表:"<

ordlist.print();

ordlist.Shellsort();

cout<<"已排序表:"<

ordlist.print();

return 0;

}

解2:这里希尔排序是独立的函数,而线性类模板作为形参,也是一种常见的用法。

#include

#include

using namespace std;

template class Orderedlist{

int maxsize;

int last;

T slist[size];

public:

int getlast(){return last;}

T getslist(int k){return slist[k];}

void putslist(T t,int k){slist[k]=t;}

Orderedlist(){last=-1;maxsize=size;}

bool Insert(T & elem,int i);

void print();

// 无关成员函数省略,缺省的=等不必定义

};//再次指出分号不可少

template bool Orderedlist::Insert(T & elem ,int i){ if (i<0||i>last+1||last==maxsize-1) return false;

else{

16

第六章模板与数据结构题17

for (int j=last;j>i;j--) slist[j]=slist[j-1];

slist[i]=elem;

last++;

return true;

}

}

template void Orderedlist::print(){

int i;

for(i=0;i<=last;i++){

cout<

if(i%5==4) cout<

else cout<<'\t';

}

cout<

}

template void Shellsort(Orderedlist & list){//非成员函数,仅以表模板类为参数

int gap=(list.getlast()+1)/2;

while(gap){

Shellinsert(list,gap);//一趟排序

gap/=2;

}

}//int size必须保留

template void Shellinsert(Orderedlist & list,const int gap){ int i,j;

T temp;

//注意每一趟排序包含若干子序列,其中第一个子序列第一个元素是0号,第二个元素是gap号,//插入排序认为单个元素是排好序的,所以从每个子序列的第二个元素开始插入排序。

for(i=gap;i<=list.getlast();i++){//从第一个子序列开始直接插入排序,但不是完成一个

//子序列,再做下一个子系列,而是先做每个子序列的第一步,再做每个子序列的第二步,//等等,穿插完成。直接插入排序总是从后逐个向前,找到第一个比待插元素大的,则插在前面。

temp=list.getslist(i);//待插元素放temp中

j=i;

while(j>=gap&&temp

list.putslist(list.getslist(j-gap),j);//找的元素,只要比temp大,就后移,空出位置

j-=gap;

}

list.putslist(temp,j);//将temp插入正确的空位

}

}

int main(){

const int h=8;

int i;

Orderedlist ordlist;

18

string n[h];

char sp[h][10]={"南京大学","东南大学","交通大学","清华大学","天津大学","复旦大学", "浙江大学","同济大学"};

for(i=0;i

for(i=0;i

cout<<"未排序表:"<

ordlist.print();

Shellsort(ordlist);

cout<<"已排序表:"<

ordlist.print();

return 0;

}

18

运筹学试题及答案

运筹学A卷) 一、单项选择题(从下列各题四个备选答案中选出一个正确答案,答案选错或未选者,该题不得分。每小题1分,共10分) 1.线性规划具有唯一最优解就是指 A.最优表中存在常数项为零 B.最优表中非基变量检验数全部非零 C.最优表中存在非基变量的检验数为零 D.可行解集合有界 2.设线性规划的约束条件为 则基本可行解为 A.(0, 0, 4, 3) B.(3, 4, 0, 0) C.(2, 0, 1, 0) D.(3, 0, 4, 0) 3.则 A.无可行解 B.有唯一最优解medn C.有多重最优解 D.有无界解 4.互为对偶的两个线性规划, 对任意可行解X 与Y,存在关系 A.Z > W B.Z = W C.Z≥W D.Z≤W 5.有6 个产地4个销地的平衡运输问题模型具有特征 A.有10个变量24个约束

B.有24个变量10个约束 C.有24个变量9个约束 D.有9个基变量10个非基变量 6、下例错误的说法就是 A.标准型的目标函数就是求最大值 B.标准型的目标函数就是求最小值 C.标准型的常数项非正 D.标准型的变量一定要非负 7、m+n-1个变量构成一组基变量的充要条件就是 A.m+n-1个变量恰好构成一个闭回路 B.m+n-1个变量不包含任何闭回路 C.m+n-1个变量中部分变量构成一个闭回路 D.m+n-1个变量对应的系数列向量线性相关 8.互为对偶的两个线性规划问题的解存在关系 A.原问题无可行解,对偶问题也无可行解 B.对偶问题有可行解,原问题可能无可行解 C.若最优解存在,则最优解相同 D.一个问题无可行解,则另一个问题具有无界解 9、有m个产地n个销地的平衡运输问题模型具有特征 A.有mn个变量m+n个约束…m+n-1个基变量 B.有m+n个变量mn个约束 C.有mn个变量m+n-1约束 D.有m+n-1个基变量,mn-m-n-1个非基变量 10.要求不超过第一目标值、恰好完成第二目标值,目标函数就是

数学建模第二章作业答案章绍辉(新)

习题2作业讲评 1. 继续考虑 2.2节的“汽车刹车距离”案例,请问“两秒准则”和“一车长度准则”一样吗?“两秒准则”是否足够安全?对于安全车距,你有没有更好的建议?(“两秒准则”,即后车司机从前车经过某一标志开始,默数2秒之后到达同一标志,而不管车速如何. 刹车距离与车速的经验公式 20.750.082678d v v =+,速度单位为m/s ,距离单位为m ) 解答 (1)“两秒准则”表明前后车距与车速成正比例关系. 引入以下符号: D ~ 前后车距(m );v ~ 车速(m/s ); 于是“两秒准则”的数学模型为22D K v v ==. 与“一车长度准则”相比是否一样,依赖于一车长度的选取. 比较2 0.750.082678d v v =+与2D v =,得: ()0.082678 1.25d D v v -=- 所以当15.12 m/s v <(约合54.43 km/h )时,有d时,有d>D ,即前后车距小于刹车距离的理论值,不够安全. 也就是说,“两秒准则”适用于车速不算很快的情况. 另外,还可以通过绘图直观的解释“两秒准则”够不够安全. 用以下MATLAB 程序把刹车距离实测数据和“两秒准则”都画在同一幅图中(图1).

v=(20:5:80).*0.44704; d2=[18,25,36,47,64,82,105,132,162,196,237,283,334 22,31,45,58,80,103,131,165,202,245,295,353,418 20,28,40.5,52.5,72,92.5,118,148.5,182,220.5,266,318,376]; d2=0.3048.*d2; k1=0.75; k2=0.082678; K2=2; d1=[v;v;v].*k1; d=d1+d2; plot([0,40],[0,K2*40],'k') hold on 51015 2025 303540 车速v (m/s ) 距离(m ) 图1

(完整版)大学土力学试题及答案

第1章 土的物理性质与工程分类 一.填空题 1. 颗粒级配曲线越平缓,不均匀系数越大,颗粒级配越好。为获得较大密实度,应选择级配良好的土料作为填方或砂垫层的土料。 2. 粘粒含量越多,颗粒粒径越小,比表面积越大,亲水性越强,可吸附弱结合水的含量越多,粘土的塑性指标越大 3. 塑性指标p L p w w I -=,它表明粘性土处于可塑状态时含水量的变化范围,它综合反映了粘性、可塑性等因素。因此《规范》规定:1710≤

p I 为粘土。 4. 对无粘性土,工程性质影响最大的是土的密实度,工程上用指标e 、r D 来衡量。 5. 在粘性土的物理指标中,对粘性土的性质影响较大的指标是塑性指数p I 。 6. 决定无粘性土工程性质的好坏是无粘性土的相对密度,它是用指标r D 来衡量。 7. 粘性土的液性指标p L p L w w w w I --= ,它的正负、大小表征了粘性土的软硬状态,《规范》 按L I 将粘性土的状态划分为坚硬、硬塑、可塑、软塑、流塑。 8. 岩石按风化程度划分为微风化、中等风化、强风化。 9. 岩石按坚固程度划分为硬质岩石,包括花岗岩、石灰岩等;软质岩石,包括页岩、泥岩等。 10.某砂层天然饱和重度20=sat γkN/m 3,土粒比重68.2=s G ,并测得该砂土的最大干重度1.17max =d γkN/m 3,最小干重度4.15min =d γkN/m 3,则天然孔隙比e 为0.68,最大孔隙比=max e 0.74,最小孔隙比=min e 0.57。 11.砂粒粒径范围是0.075~2mm ,砂土是指大于2mm 粒径累计含量不超过全重50%,而大于0.075mm 粒径累计含量超过全重50%。 12.亲水性最强的粘土矿物是蒙脱石,这是因为它的晶体单元由两个硅片中间夹一个铝片组成,晶胞间露出的是多余的负电荷,因而晶胞单元间联接很弱,水分子容易进入晶胞之间,而发生膨胀。 二 问答题 1. 概述土的三相比例指标与土的工程性质的关系? 答:三相组成的性质,特别是固体颗粒的性质,直接影响土的工程特性。但是,同样一种土,密实时强度高,松散时强度低。对于细粒土,水含量少则硬,水含量多时则软。这说明土的性质不仅决定于三相组成的性质,而且三相之间量的比例关系也是一个很重要的影响因素。

《操作系统》练习题及参考答案

《操作系统》练习题及参考答案 一、单项选择题(每小题1分,共15分) 1.操作系统是一种() A.系统软件 B.系统硬件 C.应用软件 D.支援软件 2.MS—DOS的存贮管理采用了() A.段式存贮管理 B.段页式存贮管理 C.单用户连续存贮管理 D.固定式分区存贮管理 3.用户程序在目态下使用特权指令将引起的中断是属于() A.硬件故障中断 B.程序中断 C.外部中断 D.访管中断 4.MS—DOS中用于软盘整盘复制的命令是() https://www.wendangku.net/doc/b0362058.html,P B.DISKCOPY C.SYS D.BACKUP 5.位示图方法可用于() A.盘空间的管理 B.盘的驱动调度 C.文件目录的查找 D.页式虚拟存贮管理中的页面调度 6.下列算法中用于磁盘移臂调度的是() A.时间片轮转法 B.LRU算法 C.最短寻找时间优先算法 D.优先级高者优先算法 7.在以下存贮管理方案中,不适用于多道程序设计系统的是() A.单用户连续分配 B.固定式分区分配 C.可变式分区分配 D.页式存贮管理 8.已知,作业的周转时间=作业完成时间-作业的到达时间。现有三个同时到达的作业J1,J2和J3,它们的执行时间分别是T1,T2和T3,且T1 A.T1+T2+T3 B.(T1+T2+T3) C.T1+T2+T3 D. T1+T2+T3 9.任何两个并发进程之间() A.一定存在互斥关系 B.一定存在同步关系 C.一定彼此独立无关 D.可能存在同步或互斥关系 10.进程从运行状态进入就绪状态的原因可能是() A.被选中占有处理机 B.等待某一事件 C.等待的事件已发生 D.时间片用完

11.用磁带作为文件存贮介质时,文件只能组织成() A.顺序文件 B.链接文件 C.索引文件 D.目录文件 12.一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是() A.2 B.1 C.3 D.0.5 13.多道程序设计是指() A.在实时系统中并发运行多个程序 B.在分布系统中同一时刻运行多个程序 C.在一台处理机上同一时刻运行多个程序 D.在一台处理机上并发运行多个程序 14.文件系统采用多级目录结构后,对于不同用户的文件,其文件名() A.应该相同 B.应该不同 C.可以相同,也可以不同 D.受系统约束 15.在可变式分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是() A.无上邻空闲区,也无下邻空闲区 B.有上邻空闲区,但无下邻空闲区 C.有下邻空闲区,但无上邻空闲区 D.有上邻空闲区,也有下邻空闲区 二、双项选择题(每小题2分,共16分) 1.能影响中断响应次序的技术是()和()。 A.时间片 B.中断 C.中断优先级 D.中断屏蔽 E.特权指令 2.文件的二级目录结构由()和()组成。 A.根目录 B.子目录 C.主文件目录 D.用户文件目录 E.当前目录 3.驱动调度算法中()和()算法可能会随时改变移动臂的运动方向。 A.电梯调度 B.先来先服务 C.扫描 D.单向扫描 E.最短寻找时间优先 4.有关设备管理概念的下列叙述中,()和()是不正确的。 A.通道是处理输入、输出的软件 B.所有外围设备的启动工作都由系统统一来做 C.来自通道的I/O中断事件由设备管理负责处理 D.编制好的通道程序是存放在主存贮器中的 E.由用户给出的设备编号是设备的绝对号

运筹学典型考试试题及答案

二、计算题(60分) 1、已知线性规划(20分) MaxZ=3X1+4X2 X1+X2≤5 2X1+4X2≤12 3X1+2X2≤8 X1,X2≥0 其最优解为: 基变量X1X2X3X4X5 X33/2 0 0 1 -1/8 -1/4 X25/2 0 1 0 3/8 -1/4 X1 1 1 0 0 -1/4 1/2 σj 0 0 0 -3/4 -1/2 1)写出该线性规划的对偶问题。 2)若C2从4变成5,最优解是否会发生改变,为什么? 3)若b2的量从12上升到15,最优解是否会发生变化,为什么? 4)如果增加一种产品X6,其P6=(2,3,1)T,C6=4该产品是否应该投产?为什么?解: 1)对偶问题为 Minw=5y1+12y2+8y3 y1+2y2+3y3≥3 y1+4y2+2y3≥4 y1,y2≥0 2)当C2从4变成5时, σ4=-9/8 σ5=-1/4 由于非基变量的检验数仍然都是小于0的,所以最优解不变。 3)当若b2的量从12上升到15 X=9/8 29/8 1/4 由于基变量的值仍然都是大于0的,所以最优解的基变量不会发生变化。 4)如果增加一种新的产品,则 P6’=(11/8,7/8,-1/4)T σ6=3/8>0 所以对最优解有影响,该种产品应该生产 2、已知运输问题的调运和运价表如下,求最优调运方案和最小总费用。(共15分)。 B1B2B3产量销地 产地 A1 5 9 2 15 A2 3 1 7 11 A3 6 2 8 20 销量18 12 16 解:初始解为

计算检验数 由于存在非基变量的检验数小于0,所以不是最优解,需调整 调整为: 重新计算检验数 所有的检验数都大于等于0,所以得到最优解 3、某公司要把4个有关能源工程项目承包给4个互不相关的外商投标者,规定每个承包商只能且必须承包一个项目,试在总费用最小的条件下确定各个项目的承包者,总费用为多少?各承包商对工程的报价如表2所示: (15分) 项目 投标者 A B C D 甲 15 18 21 24 乙 19 23 22 18 丙 26 17 16 19 丁 19 21 23 17 答最优解为: X= 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 1 总费用为50 4. 考虑如下线性规划问题(24分) B 1 B 2 B 3 产量/t A 1 15 15 A 2 11 11 A 3 18 1 1 20 销量/t 18 12 16 B 1 B 2 B 3 产量/t A 1 5 13 0 15 A 2 -2 0 0 11 A 3 0 0 20 销量/t 18 12 16 B 1 B 2 B 3 产量/t A 1 15 15 A 2 11 11 A 3 7 12 1 20 销量/t 18 12 16 B 1 B 2 B 3 产量/t A 1 5 13 0 15 A 2 0 2 2 11 A 3 0 0 0 20 销量/t 18 12 16

最新土力学试题与答案

1.什么是土的颗粒级配?什么是土的颗粒级配曲线? 土粒的大小及其组成情况,通常以土中各个粒组的相对含量(各粒组占土粒总量的百分数)来表示,称为土的颗粒级配(粒度成分)。根据颗分试验成果绘制的曲线(采用对数坐标表示,横坐标为粒径,纵坐标为小于(或大于)某粒径的土重(累计百分)含量)称为颗粒级配曲线,它的坡度可以大致判断土的均匀程度或级配是否良好。 2.土中水按性质可以分为哪几类? 3. 土是怎样生成的?有何工程特点? 土是连续、坚固的岩石在风化作用下形成的大小悬殊的颗粒,经过不同的搬运方式,在各种自然环境中生成的沉积物。与一般建筑材料相比,土具有三个重要特点:散粒性、多相性、自然变异性。 4. 什么是土的结构?其基本类型是什么?简述每种结构土体的特点。 土的结构是指由土粒单元大小、矿物成分、形状、相互排列及其关联关系,土中水的性质及孔隙特征等因素形成的综合特征。基本类型一般分为单粒结构、蜂窝结(粒径0.075~0. 005mm)、絮状结构(粒径<0.005mm)。 单粒结构:土的粒径较大,彼此之间无连结力或只有微弱的连结力,土粒呈棱角状、表面粗糙。 蜂窝结构:土的粒径较小、颗粒间的连接力强,吸引力大于其重力,土粒停留在最初的接触位置上不再下沉。 絮状结构:土粒较长时间在水中悬浮,单靠自身中重力不能下沉,而是由胶体颗粒结成棉絮状,以粒团的形式集体下沉。 5. 什么是土的构造?其主要特征是什么? 土的宏观结构,常称之为土的构造。是同一土层中的物质成分和颗粒大小等都相近的各部分之间的相互关系的特征。其主要特征是层理性、裂隙性及大孔隙等宏观特征。 6. 试述强、弱结合水对土性的影响 强结合水影响土的粘滞度、弹性和抗剪强度,弱结合水影响土的可塑性。 7. 试述毛细水的性质和对工程的影响。在那些土中毛细现象最显著? 毛细水是存在于地下水位以上,受到水与空气交界面处表面张力作用的自由水。土中自由水从地下水位通过土的细小通道逐渐上升。它不仅受重力作用而且还受到表面张力的支配。毛细水的上升对建筑物地下部分的防潮措施和地基特的浸湿及冻胀等有重要影响;在干旱地区,地下水中的可溶盐随毛细水上升后不断蒸发,盐分积聚于靠近地表处而形成盐渍土。在粉土和砂土中毛细现象最显著。

计算机操作系统习题及答案

1)选择题 (1)为多道程序提供的可共享资源不足时,可能出现死锁。但是,不适当的 _C__ 也可能产生死锁。 A. 进程优先权 B. 资源的线性分配 C. 进程推进顺序 D. 分配队列优先权 (2)采用资源剥夺法可以解除死锁,还可以采用 _B___ 方法解除死锁。 A. 执行并行操作 B. 撤消进程 C. 拒绝分配新资源 D. 修改信号量 (3)发生死锁的必要条件有四个,要防止死锁的发生,可以通过破坏这四个必要条件之一来实现,但破坏 _A__ 条件是不太实际的。 A. 互斥 B. 不可抢占 C. 部分分配 D. 循环等待 (4)为多道程序提供的资源分配不当时,可能会出现死锁。除此之外,采用不适当的_ D _ 也可能产生死锁。 A. 进程调度算法 B. 进程优先级 C. 资源分配方法 D. 进程推进次序 (5)资源的有序分配策略可以破坏 __D___ 条件。 A. 互斥使用资源 B. 占有且等待资源 C. 非抢夺资源 D. 循环等待资源 (6)在 __C_ 的情况下,系统出现死锁。 A. 计算机系统发生了重大故障 B. 有多个封锁的进程同时存在 C. 若干进程因竞争资源而无休止地相互等待他方释放已占有的资源 D. 资源数大大小于进程数或进程同时申请的资源数大大超过资源总数 (7)银行家算法在解决死锁问题中是用于 _B__ 的。 A. 预防死锁 B. 避免死锁 C. 检测死锁 D. 解除死锁 (8)某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是 _C__ 。 A. 12 B. 11 C. 10 D. 9 (9)死锁与安全状态的关系是 _A__ 。 A. 死锁状态一定是不安全状态 B. 安全状态有可能成为死锁状态 C. 不安全状态就是死锁状态 D. 死锁状态有可能是安全状态 (10)如果系统的资源有向图 _ D __ ,则系统处于死锁状态。 A. 出现了环路 B. 每个进程节点至少有一条请求边 C. 没有环路 D. 每种资源只有一个,并出现环路 (11)两个进程争夺同一个资源,则这两个进程 B 。

运筹学试题及答案汇总

3)若问题中 x2 列的系数变为(3,2)T,问最优解是否有变化; 4)c2 由 1 变为 2,是否影响最优解,如有影响,将新的解求出。 Cj CB 0 0 Cj-Zj 0 4 Cj-Zj 3 4 Cj-Zj 最优解为 X1=1/3,X3=7/5,Z=33/5 2对偶问题为Minw=9y1+8y2 6y1+3y2≥3 3y1+4y2≥1 5y1+5y2≥4 y1,y2≥0 对偶问题最优解为 y1=1/5,y2=3/5 3 若问题中 x2 列的系数变为(3,2)T 则P2’=(1/3,1/5σ2=-4/5<0 所以对最优解没有影响 4)c2 由 1 变为2 σ2=-1<0 所以对最优解没有影响 7. 求如图所示的网络的最大流和最小截集(割集,每弧旁的数字是(cij , fij )。(10 分) V1 (9,5 (4,4 V3 (6,3 T 3 XB X4 X5 b 9 8 X1 6 3 3 X4 X3 1 8/5 3 3/5 3/5 X1 X3 1/3 7/5 1 0 0 1 X2 3 4 1 -1 4/5 -11/5 -1/3 1 - 2 4 X 3 5 5 4 0 1 0 0 1 0 0 X4 1 0 0 1 0 0 1/3 -1/ 5 -1/5 0 X5 0 1 0 -1 1/5 -4/5 -1/3 2/5 -3/5 VS (3,1 (3,0 (4,1 Vt (5,3 V2 解: (5,4 (7,5 V4 V1 (9,7 (4,4 V3 (6,4 (3,2 Vs (5,4 (4,0 Vt (7,7 6/9 V2 最大流=11 (5,5 V4 8. 某厂Ⅰ、Ⅱ、Ⅲ三种产品分别经过 A、B、C 三种设备加工。已知生产单位各种产品所需的设备台时,设备的现有加工能力及每件产品的预期利润见表:ⅠⅡⅢ设备能力(台.h A 1 1 1 100 B 10 4 5 600 C 2 2 6 300 单

数学建模第二章作业答案章绍辉

数学建模第二章作业答案章绍辉

习题2作业讲评 1. 继续考虑 2.2节的“汽车刹车距离”案例,请问“两秒准则”和“一车长度准则”一样吗?“两秒准则”是否足够安全?对于安全车距,你有没有更好的建议?(“两秒准则”,即后车司机从前车经过某一标志开始,默数2秒之后到达同一标志,而不管车速如何. 刹车距离与车速的经验公式 20.750.082678d v v =+,速度单位为m/s ,距离单位为m ) 解答 (1)“两秒准则”表明前后车距与车速成正比例关系. 引入以下符号: D ~ 前后车距(m );v ~ 车速(m/s ); 于是“两秒准则”的数学模型为22D K v v ==. 与“一车长度准则”相比是否一样,依赖于一车长度的选取. 比较2 0.750.082678d v v =+与2D v =,得: ()0.082678 1.25d D v v -=- 所以当15.12 m/s v <(约合54.43 km/h )时,有d时,有d>D ,即前后车距小于刹车距离的理论值,不够安全. 也就是说,“两秒准则”适用于车速不算很快的情况. 另外,还可以通过绘图直观的解释“两秒准则”够不够安全. 用以下MATLAB 程序把刹车距离实测数据和“两秒准则”都画在同一幅图中(图1).

v=(20:5:80).*0.44704; d2=[18,25,36,47,64,82,105,132,162,196,237,283,334 22,31,45,58,80,103,131,165,202,245,295,353,418 20,28,40.5,52.5,72,92.5,118,148.5,182,220.5,266,318,376]; d2=0.3048.*d2; k1=0.75; k2=0.082678; K2=2; d1=[v;v;v].*k1; d=d1+d2; plot([0,40],[0,K2*40],'k') hold on plot(0:40,polyval([k2,k1,0],0:40),':k') plot([v;v;v],d,'ok','MarkerSize',2) title('比较刹车距离实测数据、理论值和两秒准则') legend('两秒准则','刹车距离理论值',... '刹车距离的最小值、平均值和最大值',2) xlabel('车速v (m/s )') ylabel('距离(m )') hold off 51015 2025 303540 020406080100120 140160180比较刹车距离实测数据、理论值和两秒准则 车速v (m/s ) 距离(m ) 两秒准则 刹车距离理论值 刹车距离的最小值、平均值和最大值 图1

大学土力学试题及答案

第1章土的物理性质与工程分类 一.填空题 1.颗粒级配曲线越平缓,不均匀系数越大,颗粒级配越好。为获得较大密实度,应选择级配良好的土料作 为填方或砂垫层的土料。 2.粘粒含量越多,颗粒粒径越小,比表面积越大,亲水性越强,可吸附弱结合水的含量越多,粘土的塑性 指标越大 3.塑性指标I P r W L -W P ,它表明粘性土处于可塑状态时含水量的变化范围,它综合反 映了粘性、可塑性等因素。因此《规范》规定:10 ::: I P _17为粉质粘土,I P 17为粘土。 4.对无粘性土,工程性质影响最大的是土的密实度,工程上用指标e、D r来衡量。 5.在粘性土的物理指标中,对粘性土的性质影响较大的指标是塑性指数I P 6.决定无粘性土工程性质的好坏是无粘性土的相对密度,它是用指标D r来衡量。 W-W P 7.粘性土的液性指标I L ,它的正负、大小表征了粘性土的软硬状态,《规范》 W L-W p 按I L将粘性土的状态划分为坚硬、硬塑、可塑、软塑、流塑。 &岩石按风化程度划分为微风化、中等风化、强风化。 9.岩石按坚固程度划分为硬质岩石,包括花岗岩、石灰岩等;软质岩石,包括页岩、泥岩 10.某砂层天然饱和重度sat =20kN∕m3,土粒比重G^ 2.68 ,并测得该砂土的最大干重 度dmax =17.1kN∕m3,最小干重度dmin =15.4 kN/m3,则天然孔隙比e为0.68,最大孔隙比e f maχ =0.74,最小孔隙比e min =0.57。 11.砂粒粒径范围是0.075~2mm,砂土是指大于2mm粒径累计含量不超过全重50%,而大 于0.075mm粒径累计含量超过全重50%。 12.亲水性最强的粘土矿物是蒙脱石,这是因为它的晶体单元由两个硅片中间夹一个铝片组成,晶胞间露出的是多余的负电荷,因而晶胞单元间联接很弱,水分子容易进入晶胞之间,而发生膨胀。 二问答题 1.概述土的三相比例指标与土的工程性质的关系? 答:三相组成的性质,特别是固体颗粒的性质,直接影响土的工程特性。但是,同样一种土, 密实时强度高,松散时强度低。对于细粒土,水含量少则硬,水含量多时则软。这说明土的性质不仅决定于

计算机操作系统习题及答案

第二章计算机操作系统 一、填空题 1. 在Windows XP中,进行系统软、硬件设置的文件夹称为______。 2. 在Windows XP系统中文标点方式下,键入符号“”对应的中文标点是______。 3. 在Windows XP默认环境中,要改变“屏幕保护程序”的设置,应首先双击“控制面板”窗口中的______图标。 4. 用Windows XP的“记事本”所创建文件的缺省扩展名是______。 5. 在Windows XP中,要添加Windows组件,必须打开______窗口。 6. 当选定文件或文件夹后,欲改变其属性设置,可以单击鼠标______键,然后在弹出的菜单中选择“属性”命令。 7. 在Windows XP中,当用鼠标左键在不同驱动器之间拖动对象时,系统默认情况下,该操作的作用是______。 8. 在Windows XP的“资源管理器”窗Vl中,将文件以列表方式显示,可按~、类型、大小、日期及自动排列五种规则排序。 9. 在WindoWS XP中,若要更改任务栏的属性,可以右键单击______空白处,再从弹出的菜单中选择“属性”命令来实现更改。 10. 在Windows XP环境中,选定多个不相邻文件的操作方法是:单击第一个文件,然后按住______键的同时,单击其它待选定的文件。 11. 在Windows xP中,利用“控制面板”窗口中的______向导工具,可以安装任何类型的新硬件。 12. 在Windows XP中,若要删除选定的文件,可直接按______键。 13. 按操作系统分类,UNIX操作系统是______。 14. 在Windows xP默认环境中,用于中英文输入方式切换的组合键是______。 15. 在Windows XP中,若系统长时间不响应用户的要求,为了结束该任务,使用______组合键。 二、单项选择题 1. Windows XP的“开始”菜单包括了Windows XP系统的()。 A. 主要功能 B. 全部功能 C. 部分功能 D. 初始化功能 2. 下列不可能出现在Windows XP中的“资源管理器”窗口左侧窗格中的选项是()。 A. 我的电脑 B. 桌面 C. use(登录的账户名)的文档 D. 资源管理器 3. 在Windows XP中,能更改文件名的操作是()。 A. 右键单击文件名,选择“重命名”命令,键入新文件名后按Enter键 B. 左键单击文件名,选择“重命名”命令,键入新文件名后按Enter键 C. 右键双击文件名,选择“重命名”命令,键入新文件名后按Enter键 D. 左键双击文件名,选择“重命名”命令,键人新文件名后按Enter键 4. 在Windows XP中,全角方式下输入的数字应占的字节数是()。 A. 1 B. 2 C. 3 D. 4 5. Windows XP中将信息传送到剪贴板不正确的方法是()。 A. 用“复制”命令把选定的对象送到剪贴板 B. 用“剪切”命令把选定的对象送到剪贴板 C. 用Ctrl+V组合键把选定的对象送到剪贴板 D. Alt+PrintScreen把当前窗口送到剪贴板 6. 在windows XP中,欲选定当前文件夹中的全部文件和文件夹对象,可使用的组合键是()。 A. Ctrl+V B. Ctrl+A C. Ctrl+X D. Ctrl+D 7. 下列文件名,()是非法的Windows XP文件名。 A. ThiS is my file B. 关于改进服务的报告

土力学习题与答案三

土力学习题与答案三 一、判断题。(60题) 1、黄土在干燥状态下,有较高的强度和较小的压缩性,但在遇水后,土的结构迅速破坏发生显著的沉降,产生严重湿陷,此性质称为黄土的湿陷性。(√) 2、经试验得知液塑限联合测定法圆锥仪入土深度为17mm,则土样的含水率等于其液限。(√) 3、土的饱和度只与含水率有关。(×) 4、土的密实度越大,土的渗透性越小。(√) 5、一土样颗粒分析的结果d10=0.16mm,d60=0.58mm,它的不均匀系数Cu=3.63。(√) 6、根据颗粒分析试验结果,在单对数坐标上绘制土的颗粒级配曲线,图中纵坐标表示小于(或大于)某粒径的土占总质量的百分数,横坐标表示土的粒径。(√) 7、黄土都具有湿陷性。(×) 8、经试验得知液塑限联合测定法圆锥仪入土深度为2mm,则土样的含水率等于其液限。( × ) 9、土的含水率直接影响其饱和度的大小。(√) 10、土的孔隙比越大,土的渗透性越大。(×) 11、常用颗粒分析试验方法确定各粒组的相对含量,常用的试验方法有筛分法和密度计法、比重瓶法。(×) 12、湖积土主要由卵石和碎石组成。(×) 13、土层在各个方向上的渗透系数都一样。( × ) 14、土的物理指标中只要知道了三个指标,其它的指标都可以利用公式进行计算。(√) 15、粘性土的界限含水率可通过试验测定。(√) 16、一土样颗粒分析的结果d10=0.19mm,它的不均匀系数Cu=3.52,d60=0.76mm。(×) 17、土的饱和度为0,说明该土中的孔隙完全被气体充满。(√) 18、岩石经风化作用而残留在原地未经搬运的碎屑堆积物为坡积土。(×) 19、一般情况下土层在竖直方向的渗透系数比水平方向小。(√) 20、粘性土的塑性指数可通过试验测定。( × ) 21、一土样颗粒分析的结果d10=0.17mm,d60=0.65mm,它的不均匀系数Cu=3.82。(√) 22、残积土一般不具层理,其成分与母岩有关。(√) 23、两个土样的含水率相同,说明它们的饱和度也相同。(×) 24、同一种土中,土中水的温度越高,相应的渗透系数越小。( × ) 25、粘性土的塑性指数与天然含水率无关。(√) 26、土的含水率的定义是水的体积与土体总体积之比。(×) 27、土中水的温度变化对土的渗透系数无影响。( × ) 28、岩石是热的不良导体,在温度的变化下,表层与内部受热不均,产生膨胀与收缩,长期作用结果使岩石发生崩解破碎。(√) 29、岩石在风化以及风化产物搬运.沉积过程中,常有动植物残骸及其分解物质参与沉积,成为土中的次生矿物。(×) 30、粘性土的液性指数可通过试验测定。( × ) 31、曲率系数在1~3之间,颗粒级配良好。(×) 32、渗透力是指渗流作用在土颗粒上单位体积的作用力。(√)

(完整word版)操作系统习题及参考答案.docx

CH4 应用题参考答案 1在一个请求分页虚拟存储管理系统中,一个程序运行的页面走向是: 1、2 、3 、4 、2 、1 、5 、6 、2 、1 、2 、3 、7 、 6 、3 、2 、1 、2 、 3、6 。 分别用 FIFO 、OPT 和 LRU 算法,对分配给程序 3 个页框、 4 个页框、 5 个页框和 6 个页框的情况下,分别求出缺页中断次数和缺页中断率。 答: 页框数FIFO LRU OPT 3161511 414108 51287 6977 只要把表中缺页中断次数除以20,便得到缺页中断率。 2 在一个请求分页虚拟存储管理系统中,一个作业共有 5 页,执行时其访问页面次序 为: ( 1 ) 1、4、3、1、2、5、1、4、2、1、4、5 ( 2 ) 3、2、1、4、4、5、5、3、4、3、2、1、5 若分配给该作业三个页框,分别采用 FIFO和 LRU 面替换算法,求出各自的缺页 中断次数和缺页中断率。 答:( 1 )采用 FIFO 为 9 次,9 / 12 = 75 %。采用 LRU 为 8 次,8 / 12 = 67 %。( 2)采用FIFO和LRU均为9次,9 / 13 = 69%。 3一个页式存储管理系统使用 FIFO 、OPT 和 LRU 页面替换算法,如果一个作业的页面走向为: ( l ) 2、3、2、l、5、2、4、5、3、2、5、2。 ( 2 ) 4、3、2、l、4、3、5、4、3、2、l、5。 ( 3 ) 1、2、3、4、1、2、5、l、2、3、4、5。

当分配给该作业的物理块数分别为 3 和 4 时,试计算访问过程中发生的缺页中断 次数和缺页中断率。 答: ( l )作业的物理块数为3块,使用 FIFO 为 9次, 9 / 12 = 75%。使用 LRU 为 7次, 7 / 12 = 58%。使用 OPT 为 6 次, 6 / 12 = = 50%。 作业的物理块数为4块,使用 FIFO 为 6次, 6 / 12 = 50%。使用 LRU 为 6次, 6 / 12 = 50%。使用 OPT 为 5 次, 5 /12 = 42 %。 ( 2 )作业的物理块数为3块,使用 FIFO 为 9次, 9 / 12 = 75%。使用 LRU 为 10 次, 10 / 12 = 83%。使用 OPT 为 7次, 7/12 = 58%。 作业的物理块数为 4块,使用 FIFO 为 10次, 10 / 12 = 83 %。使用LRU 为 8 次, 8/12 =66%。使用 OPT为 6 次, 6/12 =50%. 其中,出现了 Belady 现象,增加分给作业的内存块数,反使缺页中断率上升。 4、在可变分区存储管理下,按地址排列的内存空闲区为: 10K 、4K 、20K 、18K 、7K 、 9K 、12K 和 15K 。对于下列的连续存储区的请求: ( l ) 12K 、10K 、 9K , ( 2 ) 12K 、10K 、15K 、18K 试问:使用首次适应算法、最佳适应算法、最差适应算法和下次适应算法,哪个空闲区被使用? 答: ( 1)空闲分区如图所示。 答 分区号分区长 110K 24K 320K 418K 57K 69K 712K 815K 1)首次适应算法 12KB 选中分区 3 ,这时分区 3 还剩 8KB 。10KB 选中分区 1 ,恰好分配故应删去分区 1 。9KB 选中分区 4 ,这时分区 4 还剩 9KB 。

运筹学例题解析

(一)线性规划建模与求解 B.样题:活力公司准备在5小时内生产甲、乙两种产品。甲、乙两种产品每生产1 单位分别消耗2小时、1小时。又根据市场需求信息,乙产品的产量应该至少是甲产品产量的3倍。已知甲、乙两种产品每销售1单位的利润分别为3百元和1百元。请问:在5小时内,甲、乙两种产品各生产多少单位,才能够使得总销售利润最大 要求:1、建立该问题的线性规划模型。 2、用图解法求出最优解和最大销售利润值,并写出解的判断依据。如果不存在最优解,也请说明理由。 解:1、(1)设定决策变量: 设甲、乙两种产品分别生产x 1 、x 2 单位 。 (2)目标函数: max z=2 x 1+x 2 (3)约束条件如下:1221 12 25..3,0+≤??≥??≥?x x s t x x x x 2、该问题中约束条件、目标函数、可行域和顶点见图1所示,其中可行域用阴影部分标记,不等式约束条件及变量约束要标出成立的方向,目标函数只须画出其中一条等值线, 结论:本题解的情形是: 无穷多最优解 ,理由: 目标函数等值线 z=2 x 1+x 2与约 束条件2 x 1+x 2≤5的边界平行 。甲、乙两种产品的最优产量分别为 (5,0)或(1,3)单位;最大销售利润值等于 5 百元。 (二)图论问题的建模与求解样题 A.正考样题(最短路问题的建模与求解,清华运筹学教材编写组第三版267-268页例 13)某企业使用一台设备,每年年初,企业都要做出决定,如果继续使用旧的,要付维修费;若购买一台新设备,要付购买费。但是变卖旧设备可以获得残值收入,连续使用1年、2年、3年、4年以上卖掉的设备残值分别为8万元、6万元、3万元和0万元。试制定一个5年的更新计划,使总支出最少。已知设备在各年的购买费与维修费如表2所示。要求:(1)建立某种图论模型;(2)求出最少总支出金额。

土力学习题集及详细解答

《土力学》第二章习题集及详细解答 第2章土的物理性质及分类 一填空题 1.粘性土中含水量不同,可分别处于、、、、四种不同的状态。其界限含水量依次是、、。 2.对砂土密实度的判别一般采用以下三种方法、、。 3.土的天然密度、土粒相对密度、含水量由室内试验直接测定,其测定方法分别是、、。 4. 粘性土的不同状态的分界含水量液限、塑限、缩限分别用、、测定。 5. 土的触变性是指。 6.土的灵敏度越高,其结构性越强,受扰动后土的强度降低越。 7. 作为建筑地基的土,可分为岩石、碎石土砂土、、粘性土和人工填土。 8.碎石土是指粒径大于mm的颗粒超过总重量50%的土。 9.土的饱和度为土中被水充满的孔隙与孔隙之比。 10. 液性指数是用来衡量粘性土的状态。 二、选择题 1.作为填土工程的土料,压实效果与不均匀系数C u的关系:( ) (A)C u大比C u小好(B) C u小比C u大好(C) C u与压实效果无关 2.有三个同一种类土样,它们的含水率都相同,但是饱和度S r不同,饱和度S r越大的土,其压缩性有何变化?( ) (A)压缩性越大(B) 压缩性越小(C) 压缩性不变 3.有一非饱和土样,在荷载作用下,饱和度由80%增加至95%。试问土样的重度γ和含水率怎样改变?( ) (A)γ增加,减小(B) γ不变,不变(C)γ增加,增加 4.土的液限是指土进入流动状态时的含水率,下述说法哪种是对的?( ) (A)天然土的含水率最大不超过液限 (B) 液限一定是天然土的饱和含水率 (C)天然土的含水率可以超过液限,所以液限不一定是天然土的饱和含水率 5. 已知砂土的天然孔隙比为e=0.303,最大孔隙比e max=0.762,最小孔隙比e min=0.114,则该砂土处于( )状态。 (A)密实(B)中密 (C)松散(D)稍密 6.已知某种土的密度ρ=1.8g/cm3,土粒相对密度ds=2.70,土的含水量w=18.0%,则每立方土体中气相体积为( ) (A)0.486m3 (B)0.77m3(C)0.16m3(D)0.284m3 7.在土的三相比例指标中,直接通过室内试验测定的是()。 (A)d s,w,e; (B) d s,w, ρ; (C) d s,e, ρ; (D) ρ,w, e。

运筹学例题及解答

运筹学例题及解答 一、市场对I、II两种产品的需求量为:产品I在1-4月每月需10000件,5-9月每月需30000件,10-12月每月需100000件;产品II在3-9月每月需15000件,其它月份每月需50000件。某厂生产这两种产品成本为:产品I在1-5月内生产每件5元,6-12月内生产每件4.50元;产品II在1-5月内生产每件8元,6-12月内生产每件7元。该厂每月生产两种产品能力总和应不超过120000件。产品I容积每件0.2立方米,产品II容积每件0.4立方米,而该厂仓库容积为15000立方米,要求:(a)说明上述问题无可行解;(b)若该厂仓库不足时,可从外厂借。若占用本厂每月每平方米库容需1元,而租用外厂仓库时上述费用增加为1.5元,试问在满足市场需求情况下,该厂应如何安排生产,使总的生产加库存费用为最少。 解:(a) 10-12月份需求总计:100000X3+50000X3=450000件,这三个月最多生产120000X3=360000件,所以10月初需要(450000-360000=90000件)的库存,超过该厂最大库存容量,所以无解。 ? ?(b)考虑到生产成本,库存费用和生产费用和生产能力,该厂10-12月份需求的不足只需在7-9月份生产出来库存就行, 则设xi第i个月生产的产品1的数量,yi第i个月生产的产品2 的数量,zi,wi分别为第i个月末1,2的库存数s1i,s2i分别

为用于第i+1个月库存的原有及租借的仓库容量m3,可建立模型: Lingo 程序为 MODEL: sets: row/1..16/:; !这里n 为控制参数; col/1..7/:; AZ(row,col):b,x; endsets 1211 127777778 7887898998910910109101110111110111211min (4.57)( 1.5) 30000150003000015000300001500030000150003000015000.i i i i i i z x y s s x z y w x z z y w w x z z y w w x z z y w w x z z y w w st x z ===+++-=→-=+-=→+-=+-=→+-=+-=→+-=+-=→+-=+∑∑1211121100005000 120000(712)0.20.415000(712)0i i i i i i i y w x z i z w s s s i ?????????=→+=??+≤≤≤?+=+??≤≤≤???变量都大于等于

土力学题库及答案讲解

习题 第一章 土的物理性质及工程分类 选择题 1.土颗粒的大小及其级配,通常是用颗粒级配曲线来表示的。级配曲线越平缓表示: A .土颗粒大小较均匀,级配良好 B.土颗粒大小不均匀,级配不良 C. 土颗粒大小不均匀,级配良好 2.作为填土工程的土料,压实效果与不均匀系数u C 的关系: A . u C 大比 u C 小好 B. u C 小比 u C 大好 C. u C 与压实效果无关 3.有三个同一种类土样,它们的含水率w 都相同,但是饱和度r S 不同,饱和度r S 越大的土,其压缩性 有何变化? A.压缩性越大 B. 压缩性越小 C. 压缩性不变 4.有一非饱和土样,在荷载作用下,饱和度由80%增加至95%。试问土样的重度γ和含水率w 怎样改变? A .γ增加,w 减小 B. γ不变,w 不变 C. γ增加,w 增加 5.土的液限是指土进入流动状态时的含水率,下述说法哪种是对的? A .天然土的含水率最大不超过液限 B. 液限一定是天然土的饱和含水率 C. 天然土的含水率可以超过液限,所以液限不一定是天然土的饱和含水率 判断题 6.甲土的饱和度大与乙土的饱和度,则甲土的含水率一定高于乙土的含水率 7.粘性土的物理状态是用含水率表示的,现有甲、乙两种土,测得它们的含水率乙甲w w ,则可以断定甲土比乙土软 8.土的液性指数L I 会出现L I >0或L I <0的情况 9.土的相对密实度r D 会出现r D >1或r D <1的情况 10.土的天然重度越大,则土的密实性越好 计算题 11.击实试验,击实筒体积1000cm 2 ,测得湿土的质量为1.95kg ,取一质量为17.48kg 的湿土,烘干后质量为15.03kg ,计算含水率w 和干重度 d r 。 12.已知某地基土试样有关数据如下:①天然重度r =18.4 kN/m 3 ,干密度 d r =13.2 kN/m 3 ;②液限试验, 取湿土14.5kg ,烘干后质量为10.3kg ;③搓条试验,取湿土条5.2kg ,烘干后质量为4.1kg ,求(1)土的天然含水率,塑性指数和液性指数;(2)土的名称和状态。 13.从A ,B 两地土层中个取粘性土进行试验,恰好其液塑限相同,液限 l w =45%,塑限 p w =30%,但A 地 的天然含水率为45%,而B 地的天然含水率为25%。试求A ,B 两地的地基土的液性指数,并通过判断土的状态,确定哪个地基土比较好。 14.已知土的试验指标为r =17 kN/m 3 , s G =2.72,和w =10%,求 е和r S 。

相关文档