下载此文档

数据结构实验报告.docx


文档分类:高等教育 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
实验报告五 查找(学科:数据结构 )
姓名 单位 班级 学号 实验日期
成绩评定 教师签名 批改日期
实验名称:实验五 查找
折半查找
【问题描述 】
某班学生成绩信息表中, 每个学生的记录已按平均成绩由高到低排好序, 后来发现某个学生
的成绩没有登记到信息表中, 使用折半查找法把该同学的记录插入到信息表中, 使信息表中的记录仍按平均成绩有序。
【基本信息 】
1) 建立现有学生信息表,平均成绩已有序。
2) 输入插入学生的记录信息。
3) 用折半查找找到插入位置,并插入记录。
测试数据 】
自行设计。
【实验提示 】
1) 用结构数组存储成绩信息表。
2) 对记录中的平均成绩进行折半查找。
实验报告内容 】
设计程序代码如下 :
#include<>
#include<>
#define N 5
struct student{
char name[10];
float avg;
}
void insort(struct student s[],int n)
{
int low,hight,mid,k;
char y[10];
float x;
low=1;
hight=n;
strcpy(y,s[0].name );
x=s[0].avg ;
while(low<=hight)
{
mid=(low+hight)/2;
if(x>s[mid].avg )
hight=mid-1;
else
low=mid+1;
}
for(k=0;k<low-1;k++){
strcpy(s[k].name,s[k+1].name) ;
s[k].avg =s[k+1].avg ;
}
printf("%d",low);
strcpy(s[low-1].name ,y) ;
s[low-1].avg =x;
}
void main()
{
Struct student a[N]=
{{"caozh",96},{"cheng",95},{"zhao",93},{"wang",92},{"chen",91}};
struct student stu[N];
int i;
for(i=0;i<N;i++)
stu[i+1]=a[i];
printf(" 初始 %d 位同学的信息表 \n",MAX);
printf(" 排名 姓名 平均分数 \n");
for(i=1;i<=N;i++)
printf("%d: %6s %\n",i,stu[i].name,stu[i].avg);
printf("\n");
printf("\n");
printf(" 请输入学生的姓名: ");
scanf("%s",stu[0].name );
printf("\n");

数据结构实验报告 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人飞行的振中
  • 文件大小15 KB
  • 时间2022-01-09