当前位置:文档之家› 软件技术基础实验报告

软件技术基础实验报告

软件技术基础实验报告
软件技术基础实验报告

《软件开发技术基础》

实验报告

学院:XX学院

班级:XX

: XX

学号:XX

《软件开发技术基础》实验报告

实验名称:实验一顺序表的操作

班级学号姓名

第周星期节成绩

一、实验目的:

1、掌握顺序表结构的实现方式;

2、掌握顺序表常用算法的实现;

3、熟悉利用顺序表解决问题的一般思路;

4、参照给定的顺序表的程序样例,验证给出的顺序表的常见算法,领会顺序表结构的优点和不足。

二、实验要求:

1、掌握顺序表的特点及常见算法。

2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。

三、实验内容:

1、设计一个静态数组存储结构的顺序表,要求编程实现如下任务:

(1)建立一个顺序表,首先依次输人整数数据元素(个数根据需要键盘给定)。

(2)删除指定位置的数据元素(指定元素位置通过键盘输入),再依次显示删除后的顺序表中的数据元素。

(3)查找指定数据的数据元素(指定数据由键盘输入),若找到则显示位置,若没有找到则显示0。

2、使用顺序表实现一个电话本的管理程序,电话本中的每条记录包括学号、、手机号码

和固定电话四项。要求实现菜单、初始化、添加、删除和显示等功能。

四、程序要求:

1、采用顺序表实现,假设该顺序表的数据元素个数在最坏情况下不会超过50个。

2、写出完整的程序并能调试运行。

五、实验结果:

1、顺序表的结果:

2、电话簿的结果:

六、实验中遇到的问题及解决方法:

1.在删除数据的时候如果有两个一样的数时要怎样解决?

解决方法:用while进行判断。

2.在删除操作中,删除函数中的l是指针,所以用->指向,而在主函数中l是结构体,用“.”。

3.在查找的时候有一个返回值,而这个返回值是指针,所以在写查找函数的时候要把返回值类型写上。

七、实验心得体会:

一开始不知所措,首先应该有一个大的方向,把主程序编号,再逐步求精,落实到每一个函数的编写。对于c语言要熟练掌握,要熟悉循环等得操作,要熟练掌握顺序表中的插入,删除,查找,的基本函数。在此的基础上灵活使用。

附:

1、顺序表的程序:

#include

#include

#include

#include

#define MAXSIZE 50

struct Seqlist

{

int data[MAXSIZE];

int length;

};

Seqlist *init()

{

Seqlist *p;

p=(Seqlist *)malloc(sizeof(Seqlist));

p->length=0;

return p;

}

void insert(Seqlist *p)

{

int num=0;

printf("请输入要键入的个数:");

scanf("%d",&num);

if(num<1)

printf("键入的数据个数错误!\n");

else

{

printf("键入数据为:\n");

for(;num>0;num--)

{

p->length++;

scanf("%d",p->data+p->length-1);

if(p->length==MAXSIZE)

{

printf("数组已满\n");

break;

}

}

}

getchar();

}

void deletee(Seqlist *p)

{

int i=0;

printf("请输入要删除元素的位置:");

scanf("%d",&i);

if(i<1||i>p->length)

printf("表中没有第%d个元素!\n",i);

else

{

for(int j=i;j<=p->length-1;j++)

p->data[j-1]=p->data[j];

p->length--;

}

getchar();

}

int find(Seqlist *p)

{

int x;

printf("请输入要查找的数据:");

scanf("%d",&x);

for(int i=0;ilength;i++)

{

if(p->data[i]==x)

{

printf("此数据位于第%d个位置\n",i+1);

return i+1;

}

}

if(i>=p->length)

printf("数组中没有此数据!\n");

getchar();

return 0;

}

void display(Seqlist *p)

{

for(int i=0;ilength;i++)

printf("%-5d",p->data[i]);

putchar('\n');

getchar();

}

int main(void)

{

Seqlist *p;

p=init();

char flag;

printf("1-插入 2-删除 3-查找 4-显示 0-退出\n");

while(1)

{

printf("请输入操作:");

switch(flag=getchar())

{

case '1':insert(p);putchar('\n');break;

case '2':deletee(p);printf("删除后数据为:

");display(p);putchar('\n');getchar();break;

case '3':find(p);putchar('\n');getchar();break;

case '4':printf("显示数据为:");display(p);putchar('\n');break;

case '0':free(p);return 0;

}

}

}

2、电话簿的程序:

#include

#include

#include

#include

using namespace std;

typedef struct contact

{

string name;

string phonenumber;

string phone;

contact *next;

}CNT;

class Phonebook

{

public:

Phonebook();

CNT *Input();

CNT *Turn_to_end();

void Add();

void Delete();

void Showmenu();

CNT *Find();

void Show_item(CNT *p);

void Display();

void Modification(); private:

CNT *head;

};

Phonebook::Phonebook()

{

head=new CNT;

head->next=NULL;

}

void Phonebook::Show_item(CNT *p)

{

cout<<"|--------|--电话号码--|-------------地址------------|"<

cout<<'|'<name<<'|'<

')<phonenumber<<'|'<phone<<'|'<

cout<<"|-------------------------------------------------------|"<

cout<<"\n";

}

void Phonebook::Display()

{

CNT *p;

cout<<"|--------|--电话号码--|-------------地址------------|"<

for(p=head->next;p!=NULL;p=p->next)

cout<<'|'<name<<'|'<

')<phonenumber<<'|'<phone<<'|'<

cout<<"|-------------------------------------------------------|"<

cout<<"\n";

}

CNT *Phonebook::Input()

{

CNT *temp;

temp=new CNT;

cout<<"请输入姓名:";

cin>>temp->name;

cout<<"请输入手机号码:";

cin>>temp->phonenumber;

cout<<"请输入固定电话:";

cin>>temp->phone;

temp->next=NULL;

cout<<"\n";

return temp;

}

CNT *Phonebook::Turn_to_end() {

CNT *temp=head;

while(temp->next!=NULL)

{

temp=temp->next;

}

cout<<"\n";

return temp;

}

void Phonebook::Add()

{

CNT *temp,*p;

temp=Input();

p=Turn_to_end();

p->next=temp;

cout<<"\n";

}

void Phonebook::Delete()

{

CNT *p,*q;

q=p=head;

string data;

cout<<"请输入要删除联系人的信息:";

cin>>data;

for(p=p->next;p!=NULL&&p->name!=data&&p->phonenumber!=data&&p->phone!=data; p=p->next)

q=p;

if(p!=NULL)

{

q->next=p->next;

delete p;

}

else

cout<<"该信息不存在"<

cout<<"\n";

}

void Phonebook::Showmenu()

{

cout<<" 电话簿"<

cout<<" 1 新增 2 显示 3 删除 "<

cout<<" 4 查找 5 修改 0 退出 "<

}

CNT *Phonebook::Find()

{

CNT *p=head;

string data;

cout<<"请输入要查找或要修改的联系人的信息:";

cin>>data;

for(p=p->next;p!=NULL&&p->name!=data&&p->phonenumber!=data&&p->phone!=data; p=p->next);

if(p!=NULL)

Show_item(p);

else

cout<<"不存在该信息"<

return p;

cout<<"\n";

}

void Phonebook::Modification()

{

CNT *p;

p=Find();

if(p!=NULL)

{

cout<<"请输入姓名:";

cin>>p->name;

cout<<"请输入手机号码:";

cin>>p->phonenumber;

cout<<"请输入固定电话:";

cin>>p->phone;

}

cout<<"\n";

}

int main()

{

int select;

Phonebook phbook;

phbook.Showmenu();

while(1)

{

cout<<"\n请输入要选择的操作(0~6):";

cin>>select;

getchar();

switch(select)

{

case 0:

exit(0);

break;

case 1:

phbook.Add();

break;

case 2:

phbook.Display();

break;

case 3:

phbook.Delete();

break;

case 4:

phbook.Find();

break;

case 5:

phbook.Modification();

break;

}

}

return 0;

}

实验名称:实验二链表的操作(一)

班级学号姓名

第周星期节成绩

一、实验目的:

1、掌握单链表结构的实现方式;

2、掌握单链表常用算法的实现。

二、实验要求:

1、掌握链表的特点及常见算法。

2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。

三、实验内容:

1、设计一个链表,要求编程实现如下任务:

(1)建立一个链表,首先依次输人整数数据元素(个数根据需要键盘给定)。

(2)删除指定值的结点(指定值通过键盘输入),再依次显示删除后的链表中的数据元素。

(3)查找指定值的结点(指定数据由键盘输入),若找到则显示查找成功,若没有找到则显示查找失败。

(4) 在第i个节点(i由键盘输入,i=0表示插入的结点作为第1个结点)之后插入一个元素为x的节点。

四、程序要求:

1、采用链表实现,假设该链表的结点数在最坏情况下不会超过40个。

2、写出完整的程序并能调试运行。

五、实验结果:

六、实验中遇到的问题及解决方法:

问题:在查找数据时显示的是一样的?

解决方法:在查找函数前要标明返回值的类型lnode *find。

七、实验心得体会:

首先要把书上的关于单链表的定义理解,在这个的基础上使用它。单链表通过结点在数据后附加后继元素的指针信息,可以更灵活的添加,删除,查找,插入,元素。要清楚指针的指向。首先要定义一个头结点,并且指针域要为空。将各个操作分别编写函数,有利于分块使用而且可以多次使用。

附:

#include

int a[50],leng=0;

void delet();

void chazhao();

void main()

{

cout<<"请输入数组的个数(小于50):";

cin>>leng;

cout<<"请输入数据:";

for(int i=0;i

cin>>a[i];

int y;

cout<<"\n";

do

{

cout<<"请选择:1-删除 2-查找 0 退出"<>y;

if(y==1) delet();cout<<"\n";

if(y==2) chazhao();cout<<"\n";

}while(y!=0);

}

void delet()

{

cout<<"请输入删除的数的位置: ";

int i;

cin>>i;

if(i>=leng)

{

cout<<"数组的的长度小于你删除的位置"<

return;

}

for(int j=i;j

{

a[j-1]=a[j];

}

leng--;

for(int k=0;k

{

cout<

}

}

void chazhao()

{

int temp,x=0;

cout<<"请输入你要查找的数字: ";

cin>>temp;

for(int i=0;i

{

if(a[i]==temp)

{

x=i+1; cout<<"你要查找的数是数组的第"<

}

}

if(x==0)

cout<<"数组中没有你要查找的数";

}

重庆邮电大学-软件技术基础--实验报告(耿道渠)

《软件技术基础》实验报告 实验名称:顺序表的操作 班级学号姓名 第9 周星期 2 、5,6 节成绩 一、实验目的: 1、掌握顺序表结构的实现方式; 2、掌握顺序表常用算法的实现; 3、熟悉利用顺序表解决问题的一般思路; 4、参照给定的顺序表的程序样例,验证给出的顺序表的常见算法,领会顺序表结构的优点和不足。 二、实验内容: 1、设计一个静态数组存储结构的顺序表,要求编程实现如下任务:(1)建立一个顺序表,首先依次输人整数数据元素(个数根据需要键盘给定)。 (2)删除指定位置的数据元素(指定元素位置通过键盘输入),再依次显示删除后的顺序表中的数据元素。 (3)查找指定数据的数据元素(指定数据由键盘输入),若找到则显示位置,若没有找到则显示0。 2、使用顺序表实现一个电话本的管理程序,电话本中的每条记录包括学号、姓名、手机号码和固定电话四项。要求实现菜单、初始化、添加、删除和显示等功能。 三、实验结果:

四、实验中遇到的问题及解决方法: 第一次编写C++,感觉力不从心,回去多看看PPT。

五、实验心得体会: 对顺序表的一些常用语句不熟悉,对顺序表的整体思路理解不深刻以后要加强练习 附:源程序(自行编写或修改的程序。若为修改程序请注明修改部分的功能,若为书上实例则可不附。) #include #include #include #include #define MAXSIZE 20 using namespace std; int num; typedef struct { string student_number; string name; string tel; string home_phone; int id; } TEL; void shuaxin(TEL *); void delet(TEL *);

软件技术基础试题及答案

软件技术基础试题及答案

软件技术基础 系班级姓名成绩 得分评卷 人一、填空题(每空1分,共25分) 1.数据结构作为一门学科,主要研究数据 的、存储结构以及 三方面内容。 2.当对一个线性表经常进行插入或删除操作时,则 宜采用存储结构;而经常进行的是访问操作,而很少进行插入或删除操作时,则宜采用存储结构。 3.在线性结构中,首结点有个前驱结点, 其余每个结点有且只有个前驱结点。4.限定在表的一端进行插入,在表的另一端进行删 除的线性表称为;限定在表的一端进行插入和删除运算的线性表称为。 5.一个8阶的下三角矩阵B按行优先顺序压缩存储 第2页,共19页

6. 第3页,共19页

7. 8.操作系统通过记载、跟 踪、控制进程的执行,它是进程存在的唯一标志。 作业调度程序是从处于状态的作业中选取一个作业并把它装入主存。 12A.软件生命周期瀑布模型一般可分为问题分析、、、 和软件维护五个阶段。 , 得分评卷 人二、选择题(每小题1分,共10分)下列语句正确的是()。 A. int *p=&x; B. int *p=x; C. int p=&x; D. int *p=*x; 2. int a[ ]={1,2,3,4,5},b[5],*p; 则下列语句中不 正确的语句是()。 A. p=b+1; B.p=&a[3]; C. p=a; D.b=a; 3. 设有以下说明语句 struct node{ int a;float b;};struct node node1,node2,*pnode; 则下列语句中正确是()。 A. node1=node2; B. 第4页,共19页

软件技术基础模拟题

《软件技术基础》模拟题 一、填空题 1. 软件工程的传统途径是_____________方法学。 2. 一般说来,软件生命周期由_____________、软件开发和软件维护三个时期组成。 3. _______________的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。 4. 数据流图描述系统的_____________模型。 5. 数据字典的用途是作为_____________阶段的工具。 6. 在可行性研究以后,如果确认开发一个新的软件系统是必要的而且是可能的,那么就进入___________阶段。 7. ER模型中包含“实体”、“联系”和“_____________”三个基本成分。 8. 结构化分析方法是面向_____________进行需求分析的方法。 9. _____________是对一个软件结构内不同模块之间互联程度的度量。 10. _____________标志一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。 11. 面向数据流的设计方法把信息流映射成软件结构,信息流的类型决定了映射的方法。信息流有变换流和_____________两种类型。 12. 衡量模块独立性的两个定性的度量标准是内聚性和_________。 13. 在详细设计阶段,经常采用的工具有程序流程图、盒图、_________。 14. Jackson图不仅可表示程序结构,还可表示_________。 15. 20世纪70年代中期出现了“面向数据结构”的设计方法,其中有代表性的是Jackson方法和_________方法。 16. 面向对象有三个基本要素,它们是抽象、封装性和________。 17. 所谓对象模型就是表示静态的、________的系统的“数据”性质。 18. 维护的副作用有编码副作用、数据副作用和________副作用。 19. 软件测试是为了__________而执行程序的过程。 20. 白盒测试是结构测试,黑盒测试是________测试。 二选择 1. 研究开发资源的有效性是进行_______可行性研究的一方面。 A. 经济 B. 技术 C. 操作 D. 社会 2. 软件生命周期中时间最长的阶段是______阶段。 A. 需求分析 B. 详细设计 C. 测试 D. 维护 3. 瀑布模型是一种_________。

软件技术基础模拟试题及参考答案

软件技术基础模拟试题(第二十次省统考) 一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分) 1、数据元素是数据的基本单位,数据项是数据的最小单位。() 2、栈是特殊的线性表,须用一组地址连续的存储单元来存储其元素。() 3、引入虚拟存储技术后,逻辑内存总容量是由地址总线的位置确定的。() 4、编译程序是一种常用应用软件。() 5、顺序文件和链接文件的长度都可以动态变化。() 6、在文件系统中采用目录管理文件。() 7、允许多用户在其终端上同时交互地使用计算机的操作系统称为实时系统。() 8、程序、数据、和进程控制块是构成一个进程的三要素。() 9、黑盒测试时,既要考虑程序的内部逻辑结构又要考虑其外部特性。() 10、软件的总体设计和详细设计都要用PAD图形工具。() (参考答案:1~10:ABABB ABABB) 二、单项选择题:(每小题1分,共5分) 1、允许用户把若干作业提交计算机系统集中处理的操作系统称为()。 A分时操作系统B实时操作系统C网络操作系统D批处理操作系统2、分配到必要资源并获得了处理机时的进程的状态称为()。 A就绪状态B执行状态C等待状态D阻塞状态 3、利用通道技术可以在()之间直接交换数据。 A内存与CPU B CPU与外设C内存与外设D内存、CPU和外设三者4、以下的准则中哪个不是软件设计的准则()。 A编程语言选择准则B信息屏蔽准则 C结构化和模块化准则D抽象准则 5、有一数列:97657613294958经过一趟排序后得到: 65971376294958请问使用的是何种排序方法?() A简单插入排序B冒泡排序C2路归并排序D快速排序 (参考答案:DBCAC) 软件技术基础模拟试题(第十九次省统考) 一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分) 1、在目前,用于保证软件质量的主要手段是进行软件测试。() 2、使用DMA方式传送数据期间不需要CPU干预。() 3、线性顺序队列会产生“假溢出”,而线性循环队列则不会。() 4、对同一种算法,用高级语言编写的程序比用低级语言编写的程序运行速度快。() 5、在线性表中,数据的存储方式有顺序和链接两种。() 6、进程由程序块、文件控件块和数据块三部分组成。() 7、在面向对象的程序设计中,派生类只能从一个基类产生。() 8、操作系统是用户和硬件的接口。() 9、个人计算机中可配置的最大内存容量受地址总线位数的限制。() 10、软件维护中最困难的问题是软件配置不全。() (参考答案:1~10:A、A、A、B、A、B、A、A、A、B) 二、单项选择题:(每小题1分,共5分)

电子科技大学软件技术基础实验报告4

电子科技大学通信与信息工程学院标准实验报告 (实验)课程名称软件技术基础实验 电子科技大学教务处制表

电子科技大学 实验报告 一、实验室名称:校公共机房 二、实验项目名称:二叉树和哈夫曼树 三、实验学时:4学时 四、实验原理: 使用VS2010等C语言集成开发环境(IDE),在微型计算机上对程序进行编辑、编译、连接与运行。通过上机练习掌握二叉树的建立、插入删除,遍历等方法和过程,掌握递归函数在二叉树建立,遍历中的应用,掌握哈夫曼树的最小路径和建立过程。 五、实验目的: 1.熟练二叉树和哈夫曼树的概念和基本操作方法。 2.掌握课程平台使用方法。 六、实验内容: 上机完成所有函数,编程实验,调试运行程序并完成报告。 七、实验器材(设备、元器件): 硬件要求:普通pc机,1G内存,100G硬盘空间即可。 软件要求:Windows 7,包括C编译器的IDE。 八、实验步骤、实验编程与运行结果: 下面建立该二叉树并展示输出结果: #include #include typedef struct bnode

{ int data; struct bnode *lc,*rc; }; struct bnode* create() { struct bnode *tree=NULL; char ch; ch=getchar(); if(ch=='_') tree=NULL; else { tree=(struct bnode *)malloc(sizeof(struct bnode)); tree->data=ch; tree->lc=create(); tree->rc=create(); } return tree; } //先序遍历(根左右)--递归 int preorder(struct bnode *root) { putchar(root->data); if(root->lc!=NULL) preorder(root->lc); if(root->rc!=NULL) preorder(root->rc); } //中序遍历--递归 int inorder(struct bnode *root) { if(root->lc!=NULL) inorder(root->lc); putchar(root->data); if(root->rc!=NULL) inorder(root->rc); } //后序遍历--递归 int postorder(struct bnode *root) { if(root->lc!=NULL) postorder(root->lc); if(root->rc!=NULL)

软件技术基础模拟试题

软件技术基础模拟试题(第二十四次省统考) 一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分) 1. 顺序表和线性链表的物理存贮形式都是顺序存贮。( 1 ) 2. 数据类型是某种程序设计语言中已实现的数据结构。( 2 ) 3. 如果通过软件测试没有发现错误,则说明软件是完全正确的。( 3 ) 4. 快速原型模型可以有效地适应用户需求的动态变化。( 4 ) 5. 不同进程之间的动作在时间上不能重叠。( 5 ) 6. 分区式存储管理能够进行存储空间共享。( 6 ) 7. 链接文件和索引文件都可以非连续存放。( 7 ) 8. 中断处理一般分为中断响应和中断处理两个步骤。前者由软件实施,后者主要由硬件实施。( 8 ) 9. 在C++语言中,“重载”表达了最简单的多态性。( 9 ) 10.进程调度根据一定的调度算法,从等待队列中挑选出合适的进程。( 10 ) (参考答案:1~10:ABBAB BABAB ) 二、单项选择题:(每小题1分,共5分) 1. 在数据结构中,一个存储结点存放一个(11 )。 11 (A) 数据项(B) 数据元素(C) 数据结构(D) 数据类型 2. 把逻辑地址转变为存储的物理地址的过程称作(12 )。 12 (A) 编译(B) 连接(C) 运行(D) 重定位 3. SPOOLing技术可以实现设备的(13 )分配。 13 (A) 虚拟(B) 共享(C) 独占(D) 物理 4. 允许用户把若干作业提交计算机系统集中处理的操作系统称为(14 )。 14 (A) 分时操作系统(B) 实时操作系统 (C) 网络操作系统(D) 批处理操作系统 5. 进程从运行状态进入就绪状态的原因可能是(15 )。 15 (A) 被选中占有处理机(B) 时间片用完 (C) 等待的事件已发生(D) 等待某一事件 (参考答案:BBADB) 软件技术基础模拟试题(第二十三次省统考) 一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分) 1. 数据在计算机内在中的表示是指数据的存储结构。( 1 ) 2. 能影响中断响应次序的技术是中断优先级和中断屏蔽。( 2 ) 3. 链表可以随机访问任意一个结点,而顺序表则不能。( 3 ) 4. 作业与进程的主要区别是前者是由用户提交,后者是由系统自动生成。( 4 ) 5. Windows、OS/2、Linux微机操作系统都是多用户多任务操作系统。( 5 ) 6. 数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储结构无关,是独立于计算机的。 ( 6 ) 7. 流式文件和记录式文件都以字符为基本单位进行存取。( 7 ) 8. 不定长文件是指字段的长度不固定。( 8 ) 9. 软件工程的三要素包括方法、工具和环境。( 9 ) 10.软件结构是以指令为基础而组成的一种控制层次结构。( 10 ) (参考答案:1~10:AABAB ABBBB) 二、单项选择题:(每小题1分,共5分) 1. 若进栈序列为1,2,3,4,且进栈过程中可以出栈,则不可能出栈的序列是 ( 11 ). 11 (A) 1,4,3,2 (B) 2,3,4,1 (C) 3,1,4,2 (D) 3,4,2,1

计算机软件技术基础实验报告Word版

计算机软件基础实验报告 姓名学号实验目的 1. 掌握C语言程序设计方法,并学会上机调试。 2. 熟悉Huffman编码源程序,并构造Huffman树。 实验内容 1.试设计一算法,从包括n个元素的数组中,求最大和最小元素,并使得当n 个元素为有序排列时,元素之间的比较次数仅为n-1次。 2.在给出的Huffman编码源程序基础上,要求画出Huffman树,求出与等长编 码相比时的压缩比。 实验要求 1.根据实验内容编写算法,并用 C 语言进行程序设计。 2. 将所编程序在计算机上调试通过,并全面测试。 实验结果 1.以一个含有8个元素的一维数组{1,2,3,5,7,8,9,12}为例,设计程序如下: #include int maxArray(int x ,int y); int minArray(int x ,int y); int main(void) { int i = 0 ; int array[8]={ 1,2,3,5,7,8,9,12} ; printf; do { scanf("%d",&array[i]); i++; } while(i < 8); int maxTemp = array[0]; int minTemp = array[0]; int maxIndex = 0; int minIndex = 0; for(i=1;i<8;i++)

maxTemp = maxArray(array[i] , maxTemp); minTemp = minArray(array[i] , minTemp); } for(i=0;i<8;i++) { if (maxTemp == array[i]) { maxIndex = i; } if (minTemp == array[i]) { minIndex = i; } } printf; return 0; } 运行结果如下: 2.Huffman编码源程序 #include #include #include #include #include typedef struct {unsigned int weight; //结点权值 unsigned int parent,lchild,rchild; //结点的父指针,左右孩子指针 }HTNode,*HuffmanTree; //动态分配数组存储哈夫曼树 typedef char **HuffmanCode; //动态分配数组存储哈夫曼编码表 void CreateHuffmanTree(HuffmanTree &,unsigned int*,int ); //生成哈夫曼树 void HuffmanCoding(HuffmanTree,HuffmanCode &,int ); //对哈夫曼树

软件技术基础教学大纲资料

软件技术基础》教学大纲 课程编号: 23000840 适用专业:电子信息类(非计算机专业) 学时数: 40学分数: 2.5 开课学期:第4 学期 先修课程: 《C 语言》 考核方式:笔试(闭卷) 执笔者:沈晓峰编写日期:2015 年3月审核人(教学副院长): 一、课程性质和目标授课对象:电子信息工程专业大学二年级本科生课程类别:学科拓展课程教学目标: 本课程是针对工科电子信息类本科生开设的一门学科拓展课程。着重培养学生在软件设计领域的基本素质,基本方法和设计理念。授课对象为大学二年级学生,课程任务是通过本课程的学习和相关实验的练习,使学生掌握数据结构、操作系统等软件技术的基本理论知识,具有一定的软件开发能力。 二、教学内容和要求 1、课堂理论教学要求和学时安排(32 学时) 1) C 程序设计(4 学时) (1)C 语言回顾,指针的基本概念、运算方法和使用( 2 学时)。 (2)结构体的基本概念和使用方法(2 学时)。 2)数据结构(20 学时) (1)数据结构的基本概念(2 学时):理解数据结构的基本概念;理解线性和非线性结构的概念。 (2)线性数据结构(9 学时):理解表、栈、队列等线性数据结构的概念,存储方式及基于不同存储方式的相关操作的实现方法。 a. 理解表的概念及顺序表的存储特点,掌握其创建、插入、删除等实现方法(2 学时); b. 掌握单链表、双链表、循环链表的创建、插入、删除方法( 2 学时); c. 理解栈的概念及结构特点,掌握顺序栈及链栈的出栈、入栈操作的实现方法 (2 学时); d. 理解队列的概念及特点,掌握顺序、循环队列的创建、出队、入队、判空、判满等操作。掌握链 队列的创建及出队、入队(2 学时); e. 理解数组的概念及二维数组的存放方式,掌握对称矩阵及稀疏矩阵的压缩存储方法 (1 学时)。

软件技术基础实验报告

《计算机软件技术基础》实验报告 专业_____________ 年级_____________ 学号_____________ 学生姓名_____________ 指导老师_____________ 南华大学计算机学院编

【实验报告】

I 实验要求 1.每次实验中有若干习题,每个学生至少应该完成其中的两道习题。 2.上机之前应作好充分的准备工作,预先编好程序,经过人工检查无误后,才能上机,以提高上机效率。 3.独立上机输入和调试自己所编的程序,切忌抄袭、拷贝他人程序。 4.上机结束后,应整理出实验报告。书写实验报告时,重点放在调试过程和小节部分,总结出本次实验中的得与失,以达到巩固课堂学习、提高动手能力的目的。 实验一线性表 【实验目的】 1.熟悉VC环境,学习如何使用C语言实现线性表的两种存储结构。 2.通过编程、上机调试,进一步理解线性表的基本概念,熟练运用C语言实现线性表基本操作。 3.熟练掌握线性表的综合应用问题。 【实验内容】 必做: 1.一个线性表有n个元素(n

软件技术基础试题(含答案)

《操作系统》 选择题: (bs30)1. 分页式存储管理的主要特点是(B)。 (A) 要求作业全部同时装入内存(B) 不要求作业装入到内存的连续区域 (C) 要求扩充外存容量(D) 不要求处理缺页中断 (bs30)2. 进程从运行状态进入就绪状态的原因可能是(D)。 (A) 被选中占有处理机(B) 等待某一事件(C) 等待的事件已发生(D) 时间片用完 (bs30)3. 多道程序设计是指(D)。 (A) 在实时系统中并发运行多个程序(B) 在分布系统工程中同一时刻运行多个程序 (C) 在一台处理机上同一时刻运行多个程序(D) 在一台处理机上并发运行多个程序 (bs29)2. 进程从运行状态进入就绪状态的原因可能是( A )。 (A) 时间片用完(B) 等待某一事件(C) 等待的事件已发生(D) 被选中占有处理机(bs29)4. 以下(D)不是实时操作系统的特点。 (A) 高可靠性(B) 及时响应(C) 高效性(D) 通用性 (bs28)3. 任何两个并发进程之间( A )。 (A) 可能存在同步或互斥关系(B) 一定存在同步关系 (C) 一定彼此独立无关(D) 一定存在互斥关系 (bs28)4. 以下的哪个特征不是分时操作系统的主要特征(B)。 (A) 分时性(B) 独占性(C) 交互性(D) 多路性 (bs27)2. 以下(D)不是实时操作系统的特点。 (A) 高可靠性(B) 及时响应(C) 中断管理(D) 独立性 (bs27)3. 若当前进程因时间片用完而让出处理机时,该进程应转变为(B)状态。 (A) 运行(B) 就绪(C) 等待(D) 完成 (bs26)3. 在多道程序设计系统中,处于后备状态的作业要经过(D)调度后才能真正执行。 (A) 作业调度(B) 作业调度和设备调度(C) 进程调度(D) 作业调度和进程调度 (bs25)1. 把高级语言的源程序翻译成二进制代码的过程称为:(A)。 (A) 编译(B) 连接(C) 运行(D) 重定位 (bs25)2. 把逻辑地址转变为内存的物理地址的过程称作(D)。 (A) 地址分配(B) 地址连接(C) 地址调用(D) 地址变换 (bs25)4. 在操作系统中,进程最基本的特征是(A)。 (A) 动态性和并发性(B) 顺序性和可再现性 (C) 与程序的对应性(D) 执行过程的封闭性 (bs24)2. 把逻辑地址转变为存储的物理地址的过程称作(D)。 (A) 编译(B) 连接(C) 运行(D) 重定位 (bs24)3. SPOOLing技术可以实现设备的(B)分配。 (A) 虚拟(B) 共享(C) 独占(D) 物理 (bs24)4. 允许用户把若干作业提交计算机系统集中处理的操作系统称为(D)。 (A) 分时操作系统(B) 实时操作系统 (C) 网络操作系统(D) 批处理操作系统 (bs24)5. 进程从运行状态进入就绪状态的原因可能是(B)。 (A) 被选中占有处理机(B) 时间片用完 (C) 等待的事件已发生(D) 等待某一事件 (bs23)2. 任何两个并发进程之间( D) (A) 一定存在互斥关系(B) 一定存在同步关系 (C) 一定彼此独立无关(D) 可能存在同步或互斥关系

《计算机应用基础》实验报告本1

(封面) 上海建桥学院《计算机应用基础》 实验报告本 20 11 年3月15 日

2010-2011学年第一学期《计算机应用基础》实验目录

上海建桥学院实验报告 课程名称:计算机应用基础实验类型:验证/ 设计/ 综合 实验名称:文字处理软件的使用 系别:艺术系专业:视觉传达班级:三班学号:10B05060324 姓名:顾雯茵 同组人姓名: 指导老师:实验地点: 实验日期:2011年 3 月15 日 实验报告日期:2011年3月15日 报告退发( 订正、重做): 成绩:指导教师(签字):_________________________ 一、实验名称:文字处理软件的使用 二、实验目的: 1.掌握字体、段落格式、首字下沉、中文版式、分栏的设置; 2.掌握查找与替换、项目符号和编号、边框和底纹的设置; 3.掌握表格插入和设置; 4.掌握图片、图形、艺术字、文本框的插入、编辑及混排设置; 5.掌握公式、水印、页眉和页脚的插入及编辑方法; 6.掌握页面设置方法。

三、实验环境(所使用的平台和相关软件) (1)中文WindowXP操作系统 (2)中文Word2003应用软件 (3)中文实验配套材料配套 四、实验内容(实验内容的具体描述) 实验(1) 打开配套文件Word-Lx1.doc,按下列要求操作,并将结果以原文件名保存。 (1) 插入标题,内容见样张,其中大字:华文琥珀,72磅,空心,阴影;小字:华文云 彩,60,金色底纹,双行合一。 (2) 正文为小四号,第一段添加蓝色小3号项目符号;其余各行,首行缩进2字符;如 样张分栏,第1栏宽4厘米,间距0.75厘米;文末段落首2字下沉,并设置灰-20% 底纹。 (3) 按样张,对文中相应段落添加绿色、3磅边框线。 (4) 把文中的半角逗号、句号,均改为全角。 (5) 按样张,利用制表位在文末输入相关文字(注意对齐方式,间距自定)。 实验(2) 打开配套文件Word-Lx3.doc,按下列要求操作,并将结果以原文件名保存。 (1) 按样张,将文本标题“网上阅读,日趋流行”转化为艺术字,艺术字式样为艺术字 库中第四行第一列;艺术字字体为楷体、36磅、加粗;艺术字高2.8厘米、宽7.5厘米,形状采用“波形2”;艺术字衬底为加上填充色为“雨后初晴”斜上过渡效果的“流程图:资料带”。 (2) 按样张,将正文各段首行缩进2字符,将第二段(网页成本极为便宜…最大区别还 在于能够“反馈”。)设置成1.7倍行距。 (3) 将正文中所有的“图书馆”都替换为楷体、红色、四号、粗斜、蓝色双下划线。 (4) 按样张,为第一段中的文字“印刷出版物”制作合并字符效果,字体:隶书,字号: 12。 (5) 取消第三段原有的分栏,并将第二、三段按样张分为三栏,其栏宽分别为8字符米、 10字符、14字符。 (6) 将第四、五段加上三维边框,框线的粗细为3磅,颜色为深红,并加上如样张所示 的编号。 (7) 按样张,在文末插入大小为30%的配套图片Examine.wmf。

软件技术基础试题及答案

软件技术基础 系班级姓名成绩得分评卷人 一、填空题(每空1分,共25分) 1.数据结构作为一门学科,主要研究数据的、存储结构以及 三方面内容。 2.当对一个线性表经常进行插入或删除操作时,则宜采用存储结构;而经常进 行的是访问操作,而很少进行插入或删除操作时,则宜采用存储结构。 3.在线性结构中,首结点有个前驱结点,其余每个结点有且只有个前驱结点。 4.限定在表的一端进行插入,在表的另一端进行删除的线性表称为;限定在表 的一端进行插入和删除运算的线性表称为。 5.一个8阶的下三角矩阵B按行优先顺序压缩存储在一维数组中,则数组的大小应设 为。 6.按照二叉树的定义,具有3个结点的二叉树形态有种;具有65个结点的完全二叉 树其深度为; 深度为10的完全二叉树最多有个结点 7.在长度为n的顺序表的第i个位置上插入一个元素,元素的移动次数为;删除 第i个元素时,需要从前向后依次前移个元素。(1≤i≤n+1) 8. 顺序存储结构的循环队列中,设front 和rear分别为队头和队尾指示器,该队列中能存放的 最大元素的个数为M AX-1,则判断队列为满的条件为,而判断队列为空的条件是。 9. 设D={A,B,C,D,E},R={},结构(D,R)描述 的数据结构是。 10.系统出现死锁一定是同时保持了,,和 环路条件这四个必要条件。 11.操作系统通过记载、跟踪、控制进程的执行,它是进程存在的唯一 标志。作业调度程序是从处于状态的作业中选取一个作业并把它装入主存。12A.软件生命周期瀑布模型一般可分为问题分析、、、

和软件维护五个阶段。 , 得分评卷人 二、选择题(每小题1分,共10分) 1. 已知:int x; 下列语句正确的是()。 A. int *p=&x; B. int *p=x; C. int p=&x; D. int *p=*x; 2. int a[ ]={1,2,3,4,5},b[5],*p; 则下列语句中不正确的语句是()。 A. p=b+1; B.p=&a[3]; C. p=a; D.b=a; 3. 设有以下说明语句 struct node{ int a;float b;}; struct node node1,node2,*pnode; 则下列语句中正确是()。 A. node1=node2; B. pnode.a=10; C. return (node1+node2); D. scanf(“%d %f”,node1); 4. 线性链表不具有的特点是()。 A. 可随机访问任一个结点B.不必事先估计所需存储空间大小 C. 插入与删除时不必移动元素D.所需空间与线性表长度成正比 5. 若让元素1,2,3依次进栈,则出栈次序不可能出现()种情况。 A.3,2,1 B.2,1,3 C.3,1,2 D.1,3,2 6. 有向图的邻接表中,顶点Vi的出度是()。 A. 依附于Vi的弧数 B.Vi链表中的邻接结点个数 C. Vi在表结点中出现的次数 D. Vi度的一半 7. 某二叉树的先序序列和后序序列正好相反,则该二叉树一定是()的二叉树。 A.空或只有一个结点B.深度等于其结点数 C.任一分支结点均无左子树D.任一分支结点均无右子树

2020年春季考试《计算机软件技术基础(1)》在线考核试题_13.doc

1.有一函数Function F(ByVal a As Integer, ByVal b As Integer) As Integer,()在调用时将发生错误。 A.Call F(1, 2) B.Y = F(F(2, 3), 4) C.Z = F(2.3, 5) D.X = F(3) 【参考答案】: D 2.表达式1.5 + 3 \ 2 > 2 Or 7 Mod 3 < 4 的运算结果是()。 A.True B.0 C.1 D.False 【参考答案】: A 3.结构化程序设计所规定的三种基本控制结构是(?)。 A.输入、处理、输出 B.树形、网形、环形 C.顺序、选择、循环 D. 主程序、子程序、函数 【参考答案】: C 4.int(198.555*100+0.5)/100的值()。 A.是198 B.是199.6 C.是198.56 D.是200 【参考答案】: C 5.加载窗体时触发的事件是( )。 A.Click B.Load C.Gotfocus D.DoubleClick 【参考答案】: B 6.下面叙述不正确的是()。 A.一个控件只能有一个事件处理过程 B.用户与应用交互可以触发事 件 C.Visual https://www.doczj.com/doc/bb894751.html, 是集成了事件驱动的编程模型 D.即使用户与应用程序不进行交互,有些事件也可能发生 【参考答案】: A

7.设X=lO,y=7,表达式x\6+y*3的值为()。 A.24 B.22 C.25 D.0 【参考答案】: B 8.鼠标的移动触发()事件。 A.Click B.Mousedown C.MouseUp D.MouseMove 【参考答案】: D 9.在https://www.doczj.com/doc/bb894751.html,窗体第一次显示之前,下列()窗体事件发生。 A.Activated B.GotFocus C.Click D.Load 【参考答案】: D 10.文本框的( )属性用于设置或返回文本框中的文本内容。 A.Text B.(名称) C.Caption https://www.doczj.com/doc/bb894751.html, 【参考答案】: A 11.已知A$="12345678",则表达式Val(Mid(A, 1, 4) + Mid(A, 4, 2))的值为 ()。 A.123456 B.123445 C.8 D.6 【参考答案】: B 12.DrawArc方法绘制的图形是()。 A.圆 B.椭圆 C.弧 D.扇形 【参考答案】: C

VB软件技术基础模拟题及参考答案

软件技术基础模拟试题(第二十次省统考) 1、是非判断题(正确选填A,错误选填B)(每小题1分,共10 分) 1、数据元素是数据的基本单位,数据项是数据的最小单位。( ) 2、栈是特殊的线性表,须用一组地址连续的存储单元来存储其元素。( ) 3、引入虚拟存储技术后,逻辑内存总容量是由地址总线的位置确定的。( ) 4、编译程序是一种常用应用软件。( ) 5、顺序文件和链接文件的长度都可以动态变化。( ) 6、在文件系统中采用目录管理文件。( ) 7、允许多用户在其终端上同时交互地使用计算机的操作系统称为实时系统。( ) 8、程序、数据、和进程控制块是构成一个进程的三要素。( ) 9、黑盒测试时,既要考虑程序的内部逻辑结构又要考虑其外部特性。( ) 10、软件的总体设计和详细设计都要用PAD图形工具。( ) (参考答案:1~10:ABABB ABABB) 2、单项选择题:(每小题1分,共5分) 1、允许用户把若干作业提交计算机系统集中处理的操作系统称为 ( )。  A 分时操作系统 B 实时操作系统 C 网络操作系统 D 批处理操作系统 2、分配到必要资源并获得了处理机时的进程的状态称为( )。  A 就绪状态 B 执行状态 C 等待状态 D 阻塞状态3、利用通道技术可以在( )之间直接交换数据。  A 内存与CPU B CPU与外设 C 内存与外设 D 内存、CPU和外设三者 4、以下的准则中哪个不是软件设计的准则( )。  A 编程语言选择准则 B 信息屏蔽准则  C 结构化和模块化准则 D 抽象准则 5、有一数列:97 65 76 13 29 49 58 经过一趟排序后得到: 65 97 13 76 29 49 58 请问使用的是何种排序方法?( )  A 简单插入排序 B 冒泡排序 C 2路归并排序 D 快速排序 (参考答案:DBCAC )

《计算机软件技术基础》试题答案

《计算机软件技术基础》试题 1.线性表的链式存储结构与顺序存储结构相比优点是 CD 。 A. 所有的操作算法实现简单 B. 便于随机存取 C. 便于插入和删除 D. 便于利用零散的存储器空间 2.线性表是具有n 个 C 的有限序列。 A. 表元素 B. 字符 C. 数据元素 D. 数据项 E. 信息项 3.若长度为n 的线性表采用顺序存储结构,在其第I 个位置插入一个新元素的算法的时间复杂度为 C 。(1≤I ≤n+1) A. O(0) B. O(1) C. O(n) D. O(n 2 ) 4.设A 是一个线性表(a 1,a 2,…,a n ),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为 B ,平均每删除一个元素需要移动的元素个数为 A ;若元素插在a i 与a i+1之间(0≤I ≤n-1)的概率为 ) 1() (2+-n n i n ,则平均每插入一个 元素所要移动的元素个数为 C ; A. 21 -n B. 2n C. 3 12+n D. 4 13+n 5.下列函数中,按它们在∞→n 时的无穷大阶数,最大的是 D 。 A. log n B. nlog n C. 2n/2 D. n!

6.将下图所示的s所指结点加到p所指的结点之后,其语句应为: D 。 A. s->next=p+1; p->next=s; B. (*p).next=s; (*s).next=(*p).next; C. s->next=p->next; p->next=s->next; D. s->next=p->next; p->next=s; 7.将两个各有n个元素的有序表归并为一个有序表时,其最少的比较次数是 A 。 A. n B. 2n-1 C. n-1 D. 2n 8.下面的程序段是合并两个无头结点链表(ha和 hb)为一个无头结点链表ha的过程,作为参数的两个链表都是按结点的data域由大到小链接的。合并后新链表的结点仍按此方式链接。请填写下述空框,使程序能正确运行。 1. #define NULL 0 typedef struct node{ int data; struct node *next; }node, linklisttype; void combine(linklisttype *ha, linklisttype *hb){ linklisttype *h, *p; h = (linklisttype *)malloc(sizeof(linklisttype)); h->next = NULL; p = h;

软件技术基础实验一

软件技术基础实验一单链表的各种基本运算的实现

单链表的各种基本运算的实现 一. 实验目的: 1. 熟悉c语言上机环境; 2. 实现单链表的创建; 3. 掌握单链表的基本操作:插入、删除、输出等运算; 二. 实验内容: 编写一个程序,实现单链表的各种基本操作,并在此基础上设计一个主程序完成如下功能: 1.初始化单链表: 2 .依次采用头插法插入从文件中读取的多个元素; 3. 输出单链表; 4. 在第四个元素位置上插入从文件中读取的单个元素; 5. 删除该单链表的从文件中指定序数的元素; 三. 完整的源程序 #include #include #include #include #define max 10 #define num 6 int a[20]; int i; typedef struct link { int data; struct link *next; }link;

/*初始化单链表*/ initlink(link *L) ( L= NULL; L= ( link *)malloc(sizeof(link)); /* 建立表头结点*/ L->next = NULL; L->data = 0; } void hcreat(link *L) /*头插法插入从文件中读取的多个元素*/ ( link *s; L->next=NULL; s=(struct link*)malloc(sizeof(struct link)); int i=0; FILE *fp; if((fp=fopen("h:\\a.txt”,"r"))==NULL) printf("error!\n"); printf("文件中的数为:\n"); while(!feof(fp)&& idata=a[i]; s->next=L->next; L->next=s; i++; } fclose(fp); } void print(link *L) /* 输出单链表*/ ( link *p=L->next; while(p!=NULL) ( printf ("%d ",p->data); p=p->next; } printf("\n"); int insert(link *L, int i) ( int j,m;

软件基础实验报告

XX大学 软件技术基础 实验报告 姓名:xx 班级:自动化1105 学号:xx 成绩: 2013年11月05 日

实验一 vc++6.0基本环境与应用 实验题目:熟悉vc++6.0的实验环境 实验目的:掌握建立vc工程的方法,并学会编写简单的vc程序。 实验内容: 1,熟悉vc++界面。 启动VC++ 6.0中文版以后,屏幕上显示如图所示的开发环境。开发环境界面由标题栏、菜单栏、工具栏、项目工作区窗口、文档窗口、输出窗口及状态栏组成。每个窗口左上角均有最小化、最大化(还原)和关闭按钮。各类窗口相互独立,可进行打开、关闭、移动、极大、极小化控制以及改变窗口大小。 2 建立MFC应用程序 建一个VC++的MFC应用程序的过程可分为5个步骤: (1)创建项目

使用Files菜单下的“New”项,会弹出一个New的对话框,选中Projects 选项卡,对话框会列出一系列可以创建的项目类型(见图4.),下列出部分常用类型: ATL COM AppWizard(创建ATL应用程序) Custom AppWizard(创建自定义的应用程序) Database Project(创建数据库) DevStudio Add-in Wizard(创建自定义宏) ISAPI Extension Wizard(创建Internet服务器或过滤器) Makefile(创建Make文件) MFC AppWizard(dll)(创建MFC动态链接库) MFC AppWizard(exe)(创建MFC可执行程序) MFC AxtiveX ControlWizard(创建MFC控件程序) Win32 Dynamic Link Library(创建Win32动态链接库) Win32 Application(创建Win32程序) Win32 Console Application(创建Win32控制台程序)

计算机软件基础试题

《软件技术基础》试题库 课程名称:软件技术基础 适用专业:软件技术、计算机应用、网络、信息等计算机相关专业第一章概述 第二章数据结构 一、单项选择题 1.若长度为n的线性表采用顺序存储结构,删除它的第i数据元素之前,需要先依次向前移动_______个数据元素。( ) A. n-i B. n+i C. n-i-1 D. n-i+1 答案:A 2.在单链表中,已知q指的结点是p指的结点的直接前驱结点,若在q和p指的结点之间插入一个由s指的结点,则需执行________。( ) A. link(s)←link(p),link(p)←s B. link(q)←s,link(s)←p C. link(p)←link(s),link(s)←p D. link(p)←s,link(s)←q 答案:B 3.高度为h(h>0) 的二叉树最少有________个结点。() A. h B. h-1 C. h+1 D. 2h 答案:A 4.n个顶点的带权无向连通图的最小生成树包含________ 个顶点。() A.n-1 B.n C.n/2 D.n+1 答案:B

5.采用拉链法解决冲突的散列表中,查找的平均查找长度( )。 A. 直接与关键字个数有关 B. 直接与装填因子a 有关 C. 直接与表的容量有关 D. 直接与散列函数有关 答案:D 6.树型结构最适合用来描述( ) A.有序的数据元素 B.无序的数据元素 C.数据元素之间的具有层次关系的数据 D.数据元素之间没有关系的数据 答案:C 7.若二叉树中度为2的结点有15个,度为1的结点有10个_______个叶结点。( ) A.25 B.10 C.16 D.41 答案:C 8.若深度为6的完全二叉树的第6层有3个叶结点,则该二叉树一共有______个结点。( ) A.32 B.33 C.34 D.25 答案:C 9.若某完全二叉树的深度为h,则该完全二叉树中至少有______个结点。( ) A.2h B.2h-1 C.2h-2 D.2h-1+1 答案:C 10.在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该( ) A.只有左子树上的所有结点 B.只有左子树上的部分结点 C.只有右子树上的所有结点 D.只有右子树上的部分结点 答案:A 11.下面关于哈夫曼树的说法,不正确的是( ) A.对应于一组权值构造出的哈夫曼树一般不是唯一的 B.哈夫曼树具有最小带权路径长度

相关主题
文本预览
相关文档 最新文档