软件开发技术基础的实验报告_软件技术基础实验报告

2020-02-29 其他范文 下载本文

软件开发技术基础的实验报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“软件技术基础实验报告”。

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

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

姓名:

学号:

班级:

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

实验一 线性表的操作(2学时)

实验类型:验证性

实验要求:必修 实验学时: 2学时

一、实验目的:

参照给定的线性表顺序表类和链表类的程序样例,验证给出的线性表的常见算法。

二、实验要求:

1、掌握线性表顺序表类和链表类的特点。掌握线性表的常见算法。

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

三、实验内容:

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

1)建立一个线性表,首先依次输人整数数据元素(个数根据自己的需要键盘给定)

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

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

四、要求

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

2)写出完整的程序并能调试通过即可

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

{ if(nn==mm)

return(-1);if(nn==0)

return(0);return(1);}

template void sq_LList::ins_sq_LList(int i,T b){ int k;if(nn==mm){

cout

return;} if(i>nn)

i=nn+1;if(i

i=1;for(k=nn;k>=i;k--)

v[k]=v[k-1];v[i-1]=b;nn=nn+1;return;}

template void sq_LList::del_sq_LList(int i){ int k;if(nn==0){

cout

return;} if((inn)){

cout

return;} for(k=i;k

v[k-1]=v[k];

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

return 0;}

运行结果如下:

心得体会:

1.通过本次试验,我掌握了线性表的基本概念。

2.通过本次试验,我懂得了如何建立一个顺序表,并能对顺序表进行基本的建立、插入、检测、删除以及查找的操作。

3.本次试验我知道了线性表的顺序存储结构具有如下两个特点:(1)线性表中所有元素所占的存储空间是连续的。

(2)线性表中各元素在存储空间中是按逻辑顺序依次存放的。

实验二 栈、队列的操作

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

#define stacksize 5

typedef struct { char taskname[10];int taskno;

}DataType;

cla stack { private:

public:

};

//任务名 //任务号

int top;DataType task[stacksize];bool init();bool empty();bool push(DataType d);bool pop(DataType &d);

bool stack::init(){ top=0;int i;for(i=0;i

strcpy(task[i].taskname,“”);

task[i].taskno=-1;} return true;}

bool stack::empty(){ return top>0?false:true;

}

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

queue_node(int d){

data=d;

next=NULL;} };

cla queue { private: queue_node *front,*rear;public: bool init();bool empty();bool enqueue(int d);bool dequeue(int &d);};

bool queue::init(){

front=rear=new queue_node;

return true;}

bool queue::empty(){ if(front==rear)return true;else return false;}

bool queue::enqueue(int d){ rear->next=new queue_node(d);rear=rear->next;return true;}

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

bool sqqueue::enqueue(int d){ if((rear+1)%queuesize==front)return false;base[rear]=d;rear=(rear+1)%queuesize;return true;}

bool sqqueue::dequeue(int &d){ if(front==rear)return false;d=base[front];front=(front+1)%queuesize;return true;}

void main(){

DataType dd[5],tt;

char tn[]=“任务a”;int i;for(i=0;i

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

实验结果:

实验三 查找算法实现(2学时)

实验类型:验证性

实验要求:必修 实验学时: 2学时

一、实验目的:

参照各种查找算法程序样例,验证给出的查找常见算法。

二、实验要求:

1、掌握各种查找算法的特点,测试并验证查找的常见算法。

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

三、实验内容:

1.建立有序表,采用折半查找实现某一已知的关键字的查找。

2.利用折半查找算法在一个有序表中插入一个元素,并保持表的有序性。

源程序如下:

#include using namespace std;template cla sL_List { private:

int mm;

int nn;

T *v;public:

sL_List(){mm=0;nn=0;return;}

sL_List(int);

int search_sL_List(T);

int insert_sL_List(int,T);

void prt_sL_List();};

template sL_List::sL_List(int m){ mm=m;

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

int i;for(i=0;i

cout

int main(){ int k,t,q,result;int a[20]={10,20,30,40,50,60,70,80};sL_Lists(20);for(k=0;k

s.insert_sL_List(k+1,a[k]);cout>t;cout>q;cout

实验结果如下:

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

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

三、实验内容:

输入一组关键字序列分别实现下列排序: 1.实现直接插入排序; 2.实现冒泡排序算法;

3.实现快速排序算法(取第一个记录或中间记录作为基准记录);

4.快速排序的非递归算法; 5.堆排序。

把上述几种排序的算法编写成菜单,根据输入的数字不同执行对应的排序算法。

源程序如下:

#include using namespace std;//实现简单插入排序 template void insort(T p[],int n){ int j,k;T t;for(j=1;j

t=p[j];

k=j-1;

while((k>=0)&&(p[k]>t))

{

p[k+1]=p[k];

k=k-1;

}

p[k+1]=t;} return;} //实现冒泡排序 template void bub(T p[],int n){ int m,k,j,i;T d;k=0;

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

static int split(T p[],int n){ int i,j,k,l;T t;i=0;j=n-1;k=(i+j)/2;if((p[i]>=p[j])&&(p[j]>=p[k]))

l=j;else if((p[i]>=p[k])&&(p[k]>=p[j]))

l=k;else

l=i;t=p[l];p[l]=p[i];while(i!=j){

while((i=t))

j=j-1;

if(i

{

p[i]=p[j];

i=i+1;

while((i

i=i+1;

if(i

{

p[j]=p[i];

j=j-1;

}

} } p[i]=t;return(i);} //实现堆排序

template void hap(T p[],int n){ int i,mm;T t;mm=n/2;for(i=mm-1;i>=0;i--)

sift(p,i,n-1);for(i=n-1;i>=1;i--)

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

p[i]=100.0+200.0*p[i];cout

cout

cout

cout

cout

cout

cout

cout

cout

cout

cout

运行结果如下:

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

《软件开发技术基础的实验报告.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
软件开发技术基础的实验报告
点击下载文档
相关专题 软件技术基础实验报告 实验报告 基础 技术 软件技术基础实验报告 实验报告 基础 技术
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文