《数据结构实验与实训教程(第4版)》程序代码
目 录
第一部分 预备知识 ....................................................................................................... 1
预备知识 ............................................................................................................... 1 预备知识实验 ......................................................................................................... 2 第二部分 基础实验 ....................................................................................................... 4
实验1 线性表的基本操作 ..................................................................................... 4 实验2 链表的基本操作 ......................................................................................... 9 实验3 栈的基本操作 .......................................................................................... 15 实验4 队列的基本操作 ....................................................................................... 22 实验5 数组的基本操作 ....................................................................................... 32 实验6 字符串的基本操作 ................................................................................... 36 实验7 二叉树的基本操作 ................................................................................... 41 实验8 树的遍历和哈夫曼树 ................................................................................ 46 实验9 图的基本操作 .......................................................................................... 53 实验10 排 序................................................................................................... 59 实验11 查 找................................................................................................... 64 第三部分 课程设计实验 .............................................................................................. 69
实验1 航空客运订票系统 ..................................................................................... 69 实验2 汉诺塔游戏程序......................................................................................... 75 实验3 全屏幕编辑程序设计 .................................................................................. 79 实验4 旅游路线安排模拟系统 .............................................................................. 90 实验6 最小生成树kruskal算法 ............................................................................. 93
i
第一部分 预备知识
预备知识
例1.1
#include
int sumabc(int a, int b, int c) /* 求三个整数之和*/
{ int s;
a=b+c;
s=a+b+c; return s;
}
void displayLine(void) { printf(”----------------------\\n“); }
void main( )
{ int x,y, z ,sabc;
x=y=z=8;
display(); /* 画一条线 */
printf(“\\n sum=%d”,sumabc(x,y,z)); /* 在输出语句中直接调用函数sumabc( ) */ printf(“\\n mmm”,x,y,z); display();/* 画一条线 */
x=2; y=4; z=6;
sabc =sumabc(x, y, z); /* 在赋值语句中调用函数sumabc( ) */ printf(“\\n “ sum=%d”, sabc);
printf(“\\n mmm”,x,y,z); display();/* 画一条线 */ }
例1.2
int sumabc(int *a, int b, int c) {
int s; *a=b+c;
s=*a+b+c;
1
return s;
}
预备知识实验
int main()
{ //在main函数中调用上述声明的函数 int n; //记录个数
STUDENT stu[MAXSIZE;// 顺序存储结构,方法一 静态一维数组。 /*
顺序存储结构,方法二 动态一维数组,用malloc函数分配如下: STUDENT *stu;
stu=( STUDENT *) malloc(sizeof(STUDENT)* MAXSIZE);// 内存空间的分配 注意:分配空间可用malloc()函数, 释放空间用free()函数,如free(stu); */
int index;
printf(\请输入学生记录个数n=\ scanf(%d”,&n); InputStu(stu, n); // 预先处理输入, 建表
while(1) // 永真循环,重复显示菜单, 直至退出
{
printf(\学生信息管理主菜单**********************\\n\ printf(\显示学生信息\\n\ printf(\查找学生信息\\n\ printf(\修改学生信息\\n\ printf(\添加学生信息\\n\ printf(\退出\\n\\n\);
printf(\请选择(1~5): \
scanf(\%d\
printf(\ switch(index) {
case 1: OutputStu(stu,n); break; case 2: SearchStu(stu,n); break;
case 3: UpdateStu (stu,n); break; case 4: AppendStu (stu,&n); break; case 5: return 0; default: printf(\输入有误,请重新输入! \\n\); }//switch
2
}//while(1) }//main
3
第二部分 基础实验
实验1 线性表的基本操作
四、参考程序
程序1:题1 线性表基本操作函数 #include
struct LinearList /*定义线性表结构*/ { int *list; /* 存线性表元素 */ int size; /* 存线性表长度 */ int MaxSize; /* 存list数组元素个数 */ };
typedef struct LinearList LIST;
void InitList( LIST *L, int ms ) /* 初始化线性表 */ { if( (L->list = 1 ) == NULL ) { printf( \内存申请错误!\\n\ exit( 1 ); }
2
L->MaxSize = ms;
}
int InsertList( LIST *L, int item, int rc )
/* item:记录值 rc:插入位置 */
{
int i; if( 3 ) /* 线性表已满 */ return -1; if( rc < 0 ) /* 插入位置为 0 --> L->size */
4
…… 此处隐藏:2212字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [资格考试]机械振动与噪声学部分答案
- [资格考试]空调工程课后思考题部分整合版
- [资格考试]电信登高模拟试题
- [资格考试]2018年上海市徐汇区中考物理二模试卷(
- [资格考试]坐标转换及方里网的相关问题(椭球体、
- [资格考试]语文教研组活动记录表
- [资格考试]广东省2006年高应变考试试题
- [资格考试]LTE学习总结—后台操作-数据配置步骤很
- [资格考试]北京市医疗美容主诊医师和外籍整形外科
- [资格考试]中学生广播稿400字3篇
- [资格考试]CL800双模站点CDMA主分集RSSI差异过大
- [资格考试]泵与泵站考试复习题
- [资格考试]4个万能和弦搞定尤克里里即兴弹唱(入
- [资格考试]咽喉与经络的关系
- [资格考试]《云南省国家通用语言文字条例》学习心
- [资格考试]标准化第三范式
- [资格考试]GB-50016-2014-建筑设计防火规范2018修
- [资格考试]五年级上册品社复习资料(第二单元)
- [资格考试]2.对XX公司领导班子和班子成员意见建议
- [资格考试]关于市区违法建设情况的调研报告
- 二0一五年下半年经营管理目标考核方案
- 2014年春八年级英语下第三次月考
- 北师大版语文二年级上册第十五单元《松
- 2016国网江苏省电力公司招聘高校毕业生
- 多渠道促家长督导家长共育和谐 - 图文
- 2018 - 2019学年高中数学第2章圆锥曲线
- 竞争比合作更重要( - 辩论准备稿)课
- “案例积淀式”校本研训的实践与探索
- 新闻必须客观vs新闻不必客观一辩稿
- 福师大作业 比较视野下的外国文学
- 新编大学英语第二册1-7单元课文翻译及
- 年产13万吨天然气蛋白项目可行性研究报
- 河南省洛阳市2018届高三第二次统一考试
- 地下车库建筑设计探讨
- 南京大学应用学科教授研究方向汇编
- 2018年八年级物理全册 第6章 第4节 来
- 毕业论文-浅析余华小说的悲悯性 - 以《
- 2019年整理乡镇城乡环境综合治理工作总
- 广西民族大学留学生招生简章越南语版本
- 故宫旧称紫禁城简介




