




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告(五)
专业名称课程名称
批改教师主持教师
实验成绩校外评阅教师
实验名称查找______________
使用重要设备________PC,VC++6.0_______________________
实验规定___________________________________________________
1.掌握折半查找的算法环节和实现方法;
2.掌握二叉排序树的性质、构造方法;
3.按实验内容完毕相关程序,并用实例进行测试,验证其对的性。
实验报告内容:
实验5.1折半查找
•设计程序代码如下:
#inc1ude<stdio.h>
#inc1ude<string.h>
#defineN5
structstudent{
®charname[10];
floatavg;
)
voidinsort(structstudents口,intn)
(
intlow,hight,mid,k;
chary[10];
ofIoatx;
Iow=1;
ohight=n;
strcpy(y,s[0].name);
x=s[0].avg;
whiIe(low<=hight)
(
“mid=(low+hight)/2;
oojf(x>s[mid].avg)
。由ight=mid-1;
。else
1ow=mid+1;
°)
4or(k=0;k<low-1;k++){
。strcpy(s[k].name,s[k+1].name);
«s[k].avg=s[k+1].avg;
°)
oprintf("%dH,low);
。strcpy(s[low-1].name,y);
。s[low-1].avg=x;
)
voidmain()
(
Structstudenta[N]=
{{Hcaozh",96},{"cheng'\95},{nzhaon,93},fwangu,92},{nchenH,91}};
ostructstudentstu[N];
Anti;
4or(i=0;i<N;i++)
estu[i+1]=a[i];
printf("初始%d位同学的信息表\n”,MAX);
Printf(u排名姓名平均分数\n");
for(i=1;i<=N;i++)
printf(M%d:%6s%3.2f\nn,i,stu[i].name,stuLi].avg);
oprintf(H\n");
»printf("\n");
叩rintf("请输入学生的姓名:");
•scanf("%s",stu[O].name);
»printf("\n");
•printf(”请输入平均成绩:");
•scanf("%f",&stu[O].avg);
»printf("\n");
Msort(stu,N);
Printf折半排序后同学的信息表\n",MAX);
printf("排名姓名平均分数'n");
for(i=0;i<=N;i++)
(
•Printf("%d:%6s%3.2f\n",i+1,stu[i].name,stu[i].avg);
°}
printf("\n");
)
•程序运营结果如下:
实验5.2二叉排序树的建立
•设计程序代码如下:
#include<stdio.h>
#include<stdlib.h>
#defineMAX5
typedefstructBnode
(
ointkey;
ostructBnode*left;
◎structBnode*right;
}Bnode;
Bnode*btlnsert(intx,Bnode*root);
voidlnorder(Bnode*root);
voidmain()
(
»inti;
=inta[MAX]={60,40,70,20,80);
Bnode*root=NULL;
♦phntf("按关键字序列建立二叉排序树\n");
for(i=0;i<MAX;i++)printf("%d",a[i]);
printf("\n");
for(i=0;i<MAX;i++)root=btlnsert(a[i],root);
•printf("中序遍历的二叉排序树\n");
Inorder(root);
printf("\n");
)
Bnode*btlnsert(intx,Bnode*root)
(
Bnode*p,*q;
。intf1ag=0;
p=(Bnode*)malloc(sizeof(Bnode));
p>key=x;
p->right=p->left=NULL;
if(root==NULL)
{root=p;«returnp:,
q=root;
while(flag==O)
(
if(q->key>x)
6{
oMf(q->left!=NULL)
o6«>oq=q->left;
。®else
(
。sq->left=p;
“f1ag=1;
6)
oo}
else
oooif(q->right!=NULL)
。6q=q->right;
oooelse
00{
^q->right=p;
of1ag=1;
0)
。}
•)
^returnroot;
)
voidInorder(Bnode*root)
(
if(root
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车辆抵押贷款风险评估协议书
- 车辆销售代理与佣金结算合同
- 餐饮行业品牌授权合同协议
- 光伏发电项目投资建设合同
- 展览馆场地租赁及使用权转让合同范本
- 车辆抵押担保金融服务合同范本
- 2024-2025学年山东省烟台市高一下学期期中语文试题及答案
- 2024-2025学年河北省保定市六校协作体高一下学期期中地理试题及答案
- 养殖品种选育技术考核试卷
- 户外广告牌切割与焊接技术的市场细分与目标客户定位考核试卷
- 相关方需求和期望表
- 胃肠内镜护士进修汇报
- 23J916-1 住宅排气道(一)
- 生物基复合材料的LCA(生命周期评估)
- 【核心素养目标】人教版物理九年级 13.1分子热运动 教案
- 第四课 拗音 课件初中日语人教版七年级第一册
- 广东省广州市天河区2023-2024学年八年级下学期期末物理模拟试卷
- 甲乙方施工合同范本
- 婴幼儿配方乳粉市场销售管理规范
- 教科版四年级下册科学期末测试卷含完整答案(各地真题)
- 2024时事政治必考试题库附答案(完整版)
评论
0/150
提交评论