电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构试验杨辉三角,约瑟夫环VIP专享VIP免费

数据结构试验杨辉三角,约瑟夫环_第1页
数据结构试验杨辉三角,约瑟夫环_第2页
数据结构试验杨辉三角,约瑟夫环_第3页
1 / 17 数据结构实验报告2 / 17 实验一杨辉三角形 (Pascal ’s triangle) 一、 需求分析1. 输入的形式和输入值的范围本程序中,需输入的杨辉三角级数level 为正整数,由键盘输入,以回车结束2. 输出的形式通过屏幕输出杨辉三角3. 程序所能达到的功能用户从键盘输入需要的杨辉三角级数,从屏幕输出杨辉三角4. 测试数据输入: 5 输出:1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 二、 概要设计以链队列结构实现该实验1. 抽象数据类型定义ADT Queue { 数据对象: D = { ai | ai∈ElemSet , i = 1,2,⋯,n,n≥0 } 数据关系: R1={ | ai-1 , ai∈D, i=2,⋯,n} 约定其中 ai 端为队列头, an 端为队列尾基本操作:InitQueue ( &Q ) 操作结果:构造一个空队列Q DestroyQueue ( &Q ) 初始条件:队列Q 已存在3 / 17 操作结果:队列Q 被销毁,不再存在ClearQueue ( &Q ) 初始条件:队列Q 已存在操作结果:将 Q 清为空队列QueueEmpty ( Q ) 初始条件:队列Q 已存在操作结果:若 Q 为空队列,则返回TRUE,否则 FALSE QueueLength ( Q ) 初始条件:队列Q 已存在操作结果:返回Q 的元素个数,即队列长度GetHead ( Q , &e ) 初始条件: Q 为非空队列操作结果:用 e 返回 Q 的队头元素EnQueue ( &Q , e ) 初始条件:队列Q 已存在操作结果:插入元素e 为 Q 的新队尾元素DeQueue ( &Q , &e ) 初始条件: Q 为非空队列操作结果:删除Q 的队头元素,并用e 返回其值QueueTraverse ( Q , visit( ) ) 初始条件: Q 已存在且非空操作结果: 从队头到队尾, 依次对 Q 的每个数据元素调用函数 visit( )。一旦 visit( )失败,则操作失败。}ADT Queue 2. 主程序流程void main ( ) { 初始化;输入数据;执行功能;显示结果;} 3. 各程序模块间调用关系主程序↓各功能模块三、 详细设计4 / 17 1.抽象数据类型定义定义数据类型 QNode { 整形数据 data; 指针变量 *next; }QNode,*QueuePtr; typedef struct { 设定队头指针设定队尾指针}LinkQueue; 2. 各功能模块算法(1)//构造空队列 Q int InitQueue { 获取数据结构类型QNode;设定头结点,头尾指针指向头结点;} (2)//插入 e 为 Q的队尾元素int EnQueue { 分配动态内存空间;确认分配成功;队尾元素赋值;定义队尾指针...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部