计算机软件技术基础实验.docx

上传人:b****1 文档编号:10663354 上传时间:2023-05-27 格式:DOCX 页数:12 大小:184.85KB
下载 相关 举报
计算机软件技术基础实验.docx_第1页
第1页 / 共12页
计算机软件技术基础实验.docx_第2页
第2页 / 共12页
计算机软件技术基础实验.docx_第3页
第3页 / 共12页
计算机软件技术基础实验.docx_第4页
第4页 / 共12页
计算机软件技术基础实验.docx_第5页
第5页 / 共12页
计算机软件技术基础实验.docx_第6页
第6页 / 共12页
计算机软件技术基础实验.docx_第7页
第7页 / 共12页
计算机软件技术基础实验.docx_第8页
第8页 / 共12页
计算机软件技术基础实验.docx_第9页
第9页 / 共12页
计算机软件技术基础实验.docx_第10页
第10页 / 共12页
计算机软件技术基础实验.docx_第11页
第11页 / 共12页
计算机软件技术基础实验.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算机软件技术基础实验.docx

《计算机软件技术基础实验.docx》由会员分享,可在线阅读,更多相关《计算机软件技术基础实验.docx(12页珍藏版)》请在冰点文库上搜索。

计算机软件技术基础实验.docx

计算机软件技术基础实验

一.题目

实验3查找(线性查找和二分查找)排序(冒泡排序和快速排序)

二.环境

Vc6.0

三.逻辑框图

顺序查找:

折半查找:

冒泡排序:

快速排序:

四.程序源代码及结果

线性查找:

#include

#include

#include

#include

usingnamespacestd;

#defineM20

typedefstruct

{intkey;

floatinfo;

}JD;

intseqsrch(JDr[],intn,intk)

{

inti=n;

r[0].key=k;

while(r[i].key!

=k)

i--;

if(i==0)

cout<<"很遗憾,你要查找的数不存在,呵呵。

"<

return(i);

}

intmain()

{

JDm[M];

intk,l;

for(inti=0;i

{

m[i].key=rand()%100;

cout<

}

cout<

cout<<"Pleaseinputthenumberyouwanttosearch(0-99):

"<

cin>>k;

l=seqsrch(m,M,k);

if(l!

=0)

cout<<"你查找的数字在第"<

return0;

}

实验结果:

二分查找:

#include

#include

#include

#include

usingnamespacestd;

#defineM20

typedefstruct

{intkey;

floatinfo;

}JD;

intbinsrch(JDr[],intn,intk)

{

intlow,high,mid,found;

low=1;

high=n;

found=0;

while((low<=high)&&(found==0))

{

mid=(low+high)/2;

if(k>r[mid].key)

low=mid+1;

elseif(k==r[mid].key)

found=1;

else

high=mid-1;

}

if(found==1)

return(mid);

else

return(0);

}

intmain()

{

JDm[M+1];

intk,l;

for(inti=1;i<=M;i++)

{

m[i].key=rand()%100;

cout<

}

cout<

cout<<"Pleaseinputthenumberyouwanttosearch(0-99):

"<

cin>>k;

l=binsrch(m,M,k);

if(l!

=0)

cout<<"你查找的数字在第"<

else

cout<<"很遗憾,你要找的数不存在,呵呵"<

return0;

}

运行结果:

冒泡排序:

#include

typedefstruct

{intkey;

/*floatinfo;*/

}JD;

voidbubble_sort(JDr[],intn)

{intm,i,j,flag=1;

JDx;

m=n-1;

while((m>0)&&(flag==1))

{flag=0;

for(j=1;j<=m;j++)

if(r[j].key>r[j+1].key)

{flag=1;

x=r[j];

r[j]=r[j+1];

r[j+1]=x;

}

m--;

}

}

voidmain()

{

staticJDr[]={0,49,38,65,97,76,13,27,30};

inti,n=8;

bubble_sort(r,n);

for(i=1;i<=n;i++)

printf("%d",r[i].key);

printf("\n");

}

运行结果:

快速排序:

#include

typedefstruct

{intkey;

/*floatinfo;*/

}JD;

voidqksort(JDr[],intt,intw)

{inti,j,k;

JDx;

if(t>=w)return;

i=t;j=w;x=r[i];

while(i

{

while((i=x.key))j--;

if(i

while((i

if(i

}

r[i]=x;

qksort(r,t,j-1);

qksort(r,j+1,w);

}

voidmain()

{

staticJDr[]={0,49,38,65,97,76,13,27,50};

inti,n=8;

qksort(r,1,n);

for(i=1;i<=n;i++)

printf("%d",r[i].key);

printf("\n");

}

运行结果:

五.总结

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2