- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件技术基础实验五:查找和排序操作实验讲述
电子科技大学 电子工程 学院
标 准 实 验 报 告
(实验)课程名称 软件技术基础
一、实验名称
实验五:查找和排序操作实验
二、实验目的
理解在线性表中的各种基本的查找和查找方法的原理,实现方法,适用条件,掌握各种基本查找和排序方法编程实现。
三、实验内容
设计一个描述学生成绩信息的线性表,用于存放学生的相关信息,学生成绩表的基本信息如下:
姓名
学号
成绩
英语
模电
高数
C语言
物理
成一鸣
2602302001
73
82
83
77
92
傅强之
2602302002
65
76
73
82
84
郭志川
2602302003
87
86
91
83
81
姜博文
2602302004
51
78
62
60
80
巨乐
2602302005
69
68
78
72
79
李帅
2602302006
76
62
58
63
73
‥‥‥
‥‥‥
‥‥
‥‥
‥‥
‥‥
‥‥
要求编程实现以下功能:
A、 用顺序表存储以上学生成绩表;
B、 添加一个同学的相关信息;
C、 用顺序查找方法查找有某科成绩高于90分或某科成绩不及格的同学信息,并显示相应查找结果;
D、 以英语成绩为排序码,利用简单选择排序方法对学生成绩表进行排序,并显示排序结果;
E、 以高数成绩为排序码,利用简单插入排序方法对学生成绩表进行排序,并显示排序结果;
F、 以C语言成绩为排序码,利用冒泡排序方法对学生成绩表进行排序,并显示排序结果;
再利用二分查找的方法在已经排序后的成绩表中查找C语言成绩为x的学生信息(x为键盘输入分数值)。
四、实验程序
#includestdio.h
#includemalloc.h
#define true 1
#define false 0
#define Maxnum 20
typedef struct{
char name[50]; // 姓名
char number[15]; //学号
int yy; //英语
int md; //模电
int gs; //高数
int c; //C语言
int wl; //物理
}student;
typedef struct{
student data[Maxnum];
int num;
} listtype;
void main()
{
void initiatelist(listtype *l);
int input(listtype *l,int i);
void print(listtype *l);
void seq_search(listtype *l,int k,int n);
void selectsort(listtype *l);
void insertsort(listtype *l);
void bubblesort(listtype *l);
int binary_search(listtype *l,int a);
listtype *l;
int i,c;
l=(listtype*)malloc(sizeof(listtype));
initiatelist(l);
for(i=0;i6;i++)
input(l,i);
print(l);
printf(\n);
seq_search(l,90,60);
selectsort(l);
printf(\n);
insertsort(l);
printf(\n);
bubblesort(l);
printf(\n);
printf(请输入需要查找的C语言成绩:);
scanf(%d,c);
printf(查找结果:\n);
binary_search(l,c);
}
void initiatelist(listtype *l)//初始化顺序表
{
l-num=0;
}
int input(listtype *l,int i)
{
if(i0||iMaxnum)
{
printf(顺序表已满,不能添加新记录\n);
return(false);
}
else
{
printf(请输入学生姓名:);
scanf(%s,l-data[i].name);
printf(请输入学生学号:);
scanf(%s,(l-data[i].number));
您可能关注的文档
- 我国货币政策效应实证分析的VAR模型精要.doc
- 轮胎常见缺陷讲述.ppt
- 我国工厂化农业发展现状及趋势 (NXPowerLite) (NXPowerLite) (NXPowerLite)精要.ppt
- 软件企业税收优惠政策嘉定税务讲述.ppt
- 软件体系结构与设计模式期末复习讲述.docx
- 我国金融衍生工具的发展历史及现状分析精要.ppt
- 软件可靠性与安全性转训材料讲述.ppt
- 软件可靠性测试与评估实验指导书讲述.docx
- 软件体系结构知识点完整讲述.doc
- 软件实施活动讲述.ppt
- 2019年初级银行从业资格考试个人贷款模拟题及答案第十七套 .pdf
- 2019年六年级数学下册《比例的认识》练习题 北师大版 .pdf
- 小学语文诗词赏析教学的有效策略研究教学研究课题报告.docx
- 2019年初中七年级信息技术全册教案 .pdf
- 2019年六年级信息技术 第15课 循环语句FOR说课稿 辽师大版 .pdf
- 高中数学教学创新与学生能力提升的比较教学研究课题报告.docx
- 初中道德与法治教育中的问题探讨教学研究课题报告.docx
- 高中思想政治课的案例教学实践教学研究课题报告.docx
- 体育教学的广泛应用对学生身体素质提升的实证性验证教学研究课题报告.docx
- 小学英语浸入式教学模式的初步探索教学研究课题报告.docx
文档评论(0)