抽象数据类型..docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
抽象数据类型..doc

实验1. 抽象数据类型. 【问题描述】 用C或C++语言设计并实现一个可进行复数运算的演示程序。 【基本要求】 1.由输入的实部和虚部生成一个复数 2.两个复数求和 3.两个复数求差 4.从已知复数中分离出实部和虚部 5.复数及相应运算结果以相应的表现形式显示。 【实现提示】 定义复数为由两个相互之间存在次序关系的实数构成的抽象数据类型,则可以利用实数的操作来实现复数的操作。 (下面的内容由学生填写,格式统一为,字体: 楷体, 行距: 固定行距18,字号: 小四) 一、【实验构思(Conceive)】(10%) (本部分应包括:描述实验实现的基本思路,包括所用到的离散数学、工程数学、程序设计、算法等相关知识) 算法分析: 设计一个可进行复数运算的演示程序。实现抽象数据类型—复数,及构造复数。 完成复数四则运算的函数声明。 主程序接收和输出复数。 Switch函数选择所要进行的运算,输出运算结果。 二、【实验设计(Design)】(15%) (本部分应包括:抽象数据类型的功能规格说明、主程序模块、各子程序模块的伪码说明,主程序模块与各子程序模块间的调用关系) 抽象数据类型的定义: 数据对象:由结构体类型定义一个复数。 数据关系:(1)两个操作数real和imag具有序偶关系,real表示实部,imag表示虚部。 (2)定义c1,c2两个复数,分别用c1.real和c1.imag等分别表示c1的实部和虚部。 基本操作:(1)CreatComplexNumber (cpxNum *c,double a,double b) 操作结果:构造两个复数。 (2)cplus(cpxNum *c,cpxNum c1,cpxNum c2) 操作结果:实现两个复数加法,并输出结果。 (3)cminus(cpxNum *c,cpxNum c1,cpxNum c2) 操作结果:实现两个复数减法,并输出结果。 (4)cmultiply(cpxNum *c,cpxNum c1,cpxNum c2) 操作结果:实现两个复数除法,并输出结果。 (5)cdivide(cpxNum *c,cpxNum c1,cpxNum c2) 操作结果:实现两个复数除法,并输出结果。 主程序模块: 实现难度A的输入、输出。 2、 switch(number) { case 1: ...... break; case 2: ...... break; case 3: ...... break; case 4: ...... break; case 5: ...... } Switch语句实现输出选择,运行过程中,用户可以自己选择所要进行的运算,也可以全部输出结果。 在switch语句实现函数调用。 各子程序模块: 例如: void cplus(cpxNum *c,cpxNum c1,cpxNum c2) { c-real=c1.real+c2.real; c-imag=c1.imag+c2.imag; printf(\n数据和为:%3.2f%+3.2fi\n, c-real,c-imag); } 分别计算复数的实部和虚部,用指针分别指向两个复数,并输出结果。 主程序模块与各子程序模块间的调用: 在switch语句中实现函数调用。 例如:cplus(c,c1,c2); 函数名(参数) 三、【实现描述(Implement)】(25%) (本部分应包括:抽象数据类型具体实现的函数原型说明、 关键操作实现的伪码算法、 函数设计、函数间的调用关系,关键的程序流程图等,给出关键算法的时间复杂度分析。) 抽象数据类型具体实现的函数原型说明 例如:void cmultiply(cpxNum *c,cpxNum c1,cpxNum c2) { c-real=c1.real*c2.real-c1.imag*c2.imag; c-imag=c1.real*c2.imag+c1.imag*c2.real; printf(\n数据积为:%3.2f%+3.2fi\n, c-real,c-imag);

文档评论(0)

docindoc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档