版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告(五)
专业名称课程名称
批改教师主持教师
实验成绩校外评阅教师
实验名称查找______________
使用重要设备________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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 密码基础及应用 7
- 山东省淄博市2025年化学中考试卷(含答案)
- 2026年小学生主题班会安全
- 2026年市场调研竞品分析报告
- 2026年街道安全生产检查队
- 2026年用户增长策略产品经理
- 2026年小学生成长手册社会实践
- 2026年班级主题班会活动方案策划
- 2026年教研活动常态化工作方案设计
- 2026年车辆抵押贷款合同三篇
- 2026云南地质工程第二勘察院有限公司社会招聘29人考试参考题库及答案详解
- 漂流岗位责任制度
- 2025年山东省潍坊市中考英语真题(解析版)
- 药品窜货管理办法
- 《新生儿感染性肺炎》课件
- 2025届广东省普宁市第一中学高考历史一模试卷含解析
- 金属非金属矿山开采方法手册
- DBJT13-366-2021 建筑工程附着式升降脚手架应用技术标准
- 《烟草行业培训教材》课件
- DZ∕T 0321-2018 方解石矿地质勘查规范(正式版)
- 趣识古文字智慧树知到期末考试答案章节答案2024年吉林师范大学
评论
0/150
提交评论