文档库 最新最全的文档下载
当前位置:文档库 › 2006-2007年度数据结构大作业 - 对外经济贸易大学

2006-2007年度数据结构大作业 - 对外经济贸易大学

2006-2007年度数据结构大作业 - 对外经济贸易大学
2006-2007年度数据结构大作业 - 对外经济贸易大学

2010级数据结构大作业

2011年11月

说明:

1.每组四人,自由结合,每组推选组长一名,组内既有分工又有合作。

2.每组三道题,能够在C环境下真正运行。

3.每组趣味编程题必做,在“实验一”中选作一题。

4.第一组:2.3题、第二组:2.4题、第三组:3.3题、第四组:3.1题、第五组:3.2题、第六组:2.1题、第七组:2.2题、第八组:4.1题、

第九组:2.4题、第十组:3.3题、第十一组:2.1题、第十二组:4.1题

第13组:3.2题、第14组:2.1题、第15组:2.2题、第16组:2.4题、

实验0、趣味编程

有一叠n张卡片,从上到下依次编号为1~n,从最上面的一张开始按如下的顺序进行操作:把最上面的第一张卡片拿掉,把下一张卡片放在这一叠卡片的最下面;再把最上面的第一张卡片拿掉,把下一张卡片放在这一叠卡片的最下面;依次重复这样做,直到手中剩下一张卡片。

要求:输入不同的n,能输出剩下的这张卡片是原来n张卡片的第几张。(至少一种算法,两种算法有加分)

实验一、抽象数据类型

实验目的:帮助读者熟悉抽象数据类型的实现方法。抽象数据类型需要借助固有数据类型来表示和实现,即利用高级程序设计语言中已经存在的数据类型来说明新的结构,用已经实现的操作来组合新的操作,具体实现细节则依赖于所用语言的功能。通过本次实验还可以帮助读者复习高级语言的使用方法。

1.1 复数四则运算

[问题描述] 设计一个可以进行复数运算的演示程序。

[基本要求] 实现下列六种基本运算:1)由输入的实部和虚部生成一个复数;2)两个复数求和;3)两个复数求差;4)两个复数求积;5)从已知复数中分离出实部;6)从已知复数中分离出虚部。运算结果以相应的复数或实数的表示形式显示。

[测试数据] 对下列各对数据实现求和

(1)0;0;应输出“0”

(2) 3.1,0;4.22,8.9;应输出“7.32+8.9i”

(3)-1.33,2.34;0.1,-6.5;应输出“-1.23-4.16i”

(4)0,9.7;-2.1,-9.7;应输出“-2.1”

(5)7.7,-8;-7.7,0;应输出“-8i”

[实现提示] 定义复数为由两个相互之间存在次序关系的实数构成的抽象数据类型,则可以利用实数的操作来实现复数的操作。

[选作内容] 实现复数的其他运算,如:两个复数相除,求共轭等。

1.2 有理数四则运算

[问题描述] 设计一个可进行有理数运算的演示程序。

[基本要求] 实现两个有理数相加,相减,相乘以及求分子或求分母的运算。

[测试数据] 由读者自定。

[选作内容] 实现两个有理数相除的运算。

实验二、线性表及其应用

实验目的:帮助学生熟练掌握线性表在两种存储结构上的实现,其中以各种链表的操作和应用作为重点内容。

2.1 运动会分数统计

[问题描述] 参加运动会的n各学校编号为1~n..比赛分成m个男子项目和w个女子项目,项目编号分别为1~m和m+1~m+w.由于个项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2. 写一个统计程序产生各种成绩单和得分报表.

[基本要求] 产生各学校的成绩单,内容包括各校所取得的每项成绩的项目号,名次(成绩),姓名和得分;产生团体总分报表,内容包括校号,男子团体总分,女子团体总分和团体总分.

[测试数据] 对于n=4,m=3,w=2,编号为奇数的项目取前五名,编号为偶数的项目取前三名,设计一组实例数据.

[实现提示] 可以假设n<=20, m<=30,w<=20,姓名长度不超过20个字符. 每个项目结束时,将其编号,类型符(区分取前五名还是前三名)输入, 并按名次顺序输入运动员姓名,校名(和成绩).

[选作内容] 允许用户指定某项目采取其他名次取法.

2.2 约瑟夫环

[问题描述] 约瑟夫问题的一种描述是: 编号为1,2,…,n的n个人按顺时针方向围坐一圈, 每个人持有一个密码(正整数). 一开始任选一个正整数作为报数上限值m, 从第一个人开始顺时针方向自1开始顺序报数, 报到m时停止报数. 报m的人出列, 将他的密码作为新的m 值,从他在顺时针方向上的下一个人开始重新从1报数, 如此下去,直至所有人全部出列为止.试设计一个程序求出出列顺序.

[基本要求] 利用单向循环链表存储结构模拟此过程,按照出列的顺序印出个人的编号.

[测试数据] m的初值为20; n=7 , 7个人的密码依次为: 3,1,7,2,4,8,4, 首先m 的值为6(正确的出列顺序应为6,1,4,7,2,3,5).

[实现提示] 程序运行后, 首先要求用户指定初始报数上限值, 然后读取各人的密码. 可设n<=30. 此题所用的循环链表中不需要”头结点”, 请注意空表和非空表的界限.

[选作内容] 向上述程序中添加在顺序结构上实现的部分.

2.3集合的并、交和差运算

[问题描述] 编织一个能演示执行集合的并, 交和差运算的程序.

[基本要求] (1) 集合的元素限定为小写字母字符[′a′.. ′z′].

(2) 演示程序以用户和计算机的对话方式执行.

[测试数据] (1) Set1=″magazine″, Set2=″paper″,

Set1∪Set2=″aegimnprz″,Set1∩Set2=″ae″,Set1-Set2=″gimnz″.

(2) Set1=″012oper4a6tion89″,Set2=″error data″,

Set1∪Set2=″adeinoprt″, Set1∩Set2=″aeort″,Set1-Set2=″inp″. [实现提示] 以有序链表表示集合.

[选作内容] (1) 集合的元素判定和子集判定运算.

(2) 求集合的补集.

(3) 集合的混合运算表达式求值.

(4) 集合的元素类型推广到其他类型, 甚至任意类型。

2.4 一元多项式运算

[问题描述] 设计一个可进行一元多项式运算的演示程序。

[基本要求] 实现两个一元多项式相加,相减的运算。

[测试数据] 自定。

实验三、栈和队列及其应用

实验目的:

3.1停车场问题

[问题描述]

设停车场是一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场,每辆车停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。

[基本要求]

以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项;汽车“到达”或“离去”信息、汽车牌照号码以及到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结构实现。[测试数据]

设n=2,输入数据为:(‘A’,1,5), (‘A’,2,10), (‘D’,1,15), (‘A’,3,20), (‘A’,4,25), (‘A’,5,30), (‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。其中,:’A’表示到达(Arrival); ’D’表示离去(Departure); ‘E’表示输入结束(End)。

[实现提示]

需另设一个栈,临时停放为给要离去的汽车让路而从停车场退出来的汽车,也用顺序存储结构实现。输入数据按到达或离去的时刻有序。栈中每个元素表示一辆汽车,包含两个数据项:汽车的牌照号码和进入停车场的时刻。

[选作内容]

(1)两个栈共享空间,思考应开辟数组的空间是多少?

(2)汽车可有不同种类,则他们的占地面积不同,收费标准也不同,如1辆客车和

1.5辆小汽车的占地面积相同,1辆十轮卡车占地面积相当于3辆小汽车的占

地面积。

(3)汽车可以直接从便道上开走,此时排在它前面的汽车要先开走让路,然后再依次排到队尾。

(4)停放在便道上的汽车也收费,收费标准比停放在停车场的车低,请思考如何修改结构以满足这种要求。

3.2 车厢调度

[问题描述]

假设停在铁路调度站(如教科书中图3.1(b)所示)入口处的车厢序列的编号依次为1,2,3,…,n。设计一个程序,求出所有可能由此输出的长度为n的车厢序列。

[基本要求]

首先在教科书3.1.2节中提供的栈的书续存储结构SqStack之上的实现栈的基本操作,即实现栈类型。程序对栈的任何存取(即更改,读取和状态判别等操作)必须借助于基本操作进行。

[测试数据]

分别取n=1,2,3和4

[实现提示]

一般的说,在操作过程的任何状态下都有两种可能的操作:“入”和“出”。每个状态下处理问题的方法都是相同的,这说明问题本身具有天然的递归特性,可以考虑用递归算法实现。输入序列可以由一对整形变量表示,即给出序列头/尾编号。输出序列用栈实现是方便的(思考:为什么不应该用队列实现),只要再定义一个栈打印操作print(s),自底至顶顺序的印出栈元素的值。

[选作内容]

(1)利用教材中3.1.2节图3.3所示的存储结构实现调度站和输出序列这两个栈的空间共享。思考m的值取多少最合适。

(2)对于每个输出数列印出操作序列或/和状态变化过程。

3.3 算术表达式求值演示

[问题描述]

表达式计算是实现程序设计语言的基本问题之一,也是栈的应用的一个典型例子。设计一个程序,演示用算符优先法对算术表达式求值的过程。

[基本要求]

以字符序列的形式从终端输入语法正确的、不含变量的整数表达式。利用教科书表3.1给出的算符优先关系,实现对算术四则混合运算表达式的求值,并依照教科书的例3-1演示在求值中运算符栈、运算数栈、输入字符和主要操作的变化过程。

[测试数据]

教材例3-1的算术表达式3*(7-2),以及下列表达式

8;1+2+3+4;88-1*5;1024/4*8;1024/(4*8);(20+2)*(6/2);3-3-3;8/(9-9);2*(6+2*(3+6*(6+6)));(((6+6)*6+3)*2+6)*2;

[实现提示]

(1)设置运算符栈和运算数栈辅助分析算符优先关系。

(2)在读入表达式的字符序列的同时,完成运算符和运算数(整数)的识别处理,以及相应的运算。

(3)在识别出运算数的同时,要将其字符序列形式转换成整数形式。

(4)在程序的适当位置输出运算符栈、运算数栈、输入字符和主要操作的内容。[选作内容]

(1)扩充运算符集,如增加乘方、单目减、赋值等运算。

(2)运算量可以是变量。

(3)运算量可以是实数类型。

(4)计算器的功能和仿真界面。

实验四、串应用

4.1 文学助手研究

[问题描述]文学研究人员需要统计某篇英文小说某些形容词出现次数与位置。试写一个实现这一目标的文字统计系统,称为“文学研究助手”。

[基本要求]英文小说存在于一个文本文件中。待统计的词汇集合要一次输入完毕,即统计工作必须在程序的一次运行之后就会全部完成。程序的输出结果是每个词的出现次数和出现位置所在行的行号,格式自行设计。

[测试数据]以你的C源程序模拟英文小说,C语言的保留字集作为待统计的词汇集。

[实现提示]约定小说中的词汇一律不跨行。这样,每读入一行,就统计每个词在这行中的出现次数。出现位置所在行的行号可以用链表存储。若某行中出现了不止一次,不必存多个相同的行号。

如果读者希望达到选作部分(1)和(2)所提出的要求,则首先应把KMP算法改写成如下的等价形式,再把它推广到多个模式的情形。

i=1;j=1;

while(i=!s.curlen+1&&j!=t.curlen+1){

while(j!=0&&s.h[I]!=t.ch[j]j=next[j];

//j==0或s.ch[I]==t.ch[j]

j++;I++;//每次进入循环体,I 只增加一次}

[选作内容]

(1)模式匹配要基于KMP算法。

(2)整个统计过程中只对小说文字扫描一遍以提高效率。

(3)假设小说中的每个单词或者从首行开始,或者前置一个空格符。利用单词匹配特点另写一个高效的统计程序,与KMP算法统计程序进行效率比较。

(4)推广到更一般的模式集匹配问题,并设待查模式串可以跨行(提示:定义操作GetAChar)。

四川大学《结构设计原理1643》在线作业答案

川大15秋《结构设计原理1643》在线作业答案 一、单选题: 1.题面如下: (满分:2) A. a B. b C. c D. d 2.预应力混凝土构件,当采用钢绞线、钢丝、热处理钢筋做预应力钢筋时,混凝土强度等级不宜低于( )。 (满分:2) A. C25 B. C30 C. C40 D. C45 3.适筋梁在逐渐加载过程中,当受拉钢筋刚刚屈服后,则( )。 (满分:2) A. 该梁达到最大承载力而立即破坏 B. 该梁达到最大承载力,一直维持到受压区边缘混凝土达到极限压应变而破坏 C. 该梁达到最大承载力,随后承载力缓慢下降,直至破坏 D. 该梁承载力略有增加,待受压区边缘混凝土达到极限压应变而破坏 4.题面如下: (满分:2) A. a B. b C. c D. d 5.提高截面刚度的最有效措施是( )。 (满分:2) A. 提高混凝土强度等级 B. 增大构件截面高度 C. 增加钢筋配筋量 D. 改变截面形状 6.钢筋混凝土大偏压构件的破坏特征是( )。 (满分:2) A. 远离纵向力作用一侧的钢筋拉屈,随后另一侧钢筋压屈,混凝土亦压碎 B. 靠近纵向力作用一侧的钢筋拉屈,随后另一侧钢筋压屈,混凝土亦压碎 C. 靠近纵向力作用一侧的钢筋和混凝土应力不定,而另一侧受拉钢筋拉屈 D. 远离纵向力作用一侧的钢筋和混凝土应力不定,而另一侧受拉钢筋拉屈 7.热轧钢筋冷拉后,( )。 (满分:2) A. 可提高抗拉强度和抗压强度 B. 只能提高抗拉强度 C. 可提高塑性,强度提高不多 D. 只能提高抗压强度 8.题面如下: (满分:2) A. a B. b C. c D. d

数据结构大作业含源代码

数据结构大作业 作业题目:职工信息管理系统 姓名: 学号: 班级: 指导教师: 日期:

一、主要功能: 这个职工信息管理系统是由C语言编写的程序,它用起来很方便又很灵活。它由输入职工信息,输出职工信息,按职工号,部门号,工资排序,按职工号,部门号,工资来输出职工的所有信息。删除有关职工的所有信息,保存职工的所有信息并退出等11个模块儿组成。 二、实验环境:C语言、C++、C# 等等。 三、功能说明: 下面按步骤来介绍一下,职工信息管理系统的基本操作。 这是运行程序以后出现的主界面。如图(1)所示: 图(1)主界面 1.输入职工的信息 该模块儿的功能是分别输入职工的姓名,职工号,部门号,工资等信息。每次输入职工的所有信息以后,界面上会显示出《输入完成!》的命令。如图(2)所示:

图(2)输入职工信息 2.输出所有的职工信息 该模块儿的功能是显示出有关职工的所有信息。操作如图(3)所示: 图(3)输出所有的职工信息 3.按职工号排序 该模块儿的功能是按职工号排序所有的职工。我们按3的时候,界面上会显示出《排序完成!》的命令。如图(4)所示:

图(4)按职工号排序 4.输出所有的职工号码 该模块儿的功能是显示出已排序好的所有职工的号码。操作如图(5)所示: 图(5)输出所有的职工号 5.按部门号排序 该模块儿的功能是按部门号排序所有职工的部门号。我们按5的时候,界面上会显示出《排序完成!》的命令。如图(6)所示:

图(6)按部门号排序 6.输出所有的部门号 该模块儿的功能是显示出已排序好的所有部门号。操作如图(7)所示: 图(7)输出所有的部门号 7.按职工的工资排序 该模块儿的功能是按工资排序所有职工的工资。我们按7的时候,界面上会显示出《排序完成!》的命令。如图(8)所示:

新编机械结构设计大作业

《结构设计》课程大作业 、课程大作业的目的: 1、课程大作业属于机械专业设计类课程的延续,是机械系统设计的一次全面训练,可以为毕业设计打下良好基础。通过课程大作业,进一步学习掌握机械系统设计的一般方法,培养学生综合运用机械制图、机械设计、机械原理、公差与配合、金属工艺学、材料热处理及结构工艺等相关知识,联系实际并运用所学过的知识,提高进行工程设计的能力。 2、加强学生运用有关设计资料、设计手册、标准、规范及经验数据的能力,提高技术总结及编制技术文件的能力,培养和提高学生独立的分析问题、解决问题的能力,也是毕业设计教学环节实施的前期技术准备。 二、课程大作业的基本要求: 1 、分组与选题: ①自由组合,每组原则上三人(最少2人);每组的同学统一提交、共同答辩。 ②具体课题题目(由指导教师给出),同组同学集体研讨后完成。 2、大作业的基本要求: ①大作业的论述必须合理; ②大作业中的内容要注明出处,注明资料来源(参考文献及资料); ③总的文字(含图、表)不少于2万字,使用标准A4纸打印成稿(文字选用宋体小四号,页边距均为2cm,单倍行距),封面需要注明课题详细名称、参加学生姓名、班级学号、指导教师等。 三、课程大作业题目及其要点 举例说明在下列的机械结构设计中,如何提高机械结构性能的途径或措施有那些?(围绕题目和要点) 机自082-28吴铁健、-29张明、-14张钦亮:

(1)便于退刀准则 (2)最小加工量准则 (3)可靠夹紧准则 (4)一次夹紧成形准则 (5)便利切削准则 (6)减少缺口效应准则 (7)避免斜面开孔准则 (8)贯通空优先准则 (9)孔周边条件相近准则 机自083 -06焦文、-36张浩然、-14 丁世洋: (一)提高强度和刚度的结构设计 1、载荷分担 2、载荷均布 3、减少机器零件的应力集中 4、利用设置肋板的措施提高刚度 (二)提高耐磨性的结构设计

四川大学网络教育学院《结构设计原理》第二次作业答案

四川大学网络教育学院《结构设计原理》第二次作业答案 你的得分: 90.0 完成日期:2014年09月09日 16点03分 说明:每道小题括号里的答案是您最高分那次所选的答案,标准答案将在本次作业结束(即2014年09月11日)后显示在题目旁边。 一、单项选择题。本大题共25个小题,每小题 2.0 分,共50.0分。在每小题给出的选项中,只有一项是符合题目要求的。 1. ( D ) A. a B. b C. c D. d 2.下列说法正确的是()。 ( D ) A.加载速度越快,则得的混凝土立方体抗压强度越低 B.棱柱体试件的高宽比越大,测得的抗压强度越高 C.混凝土立方体试件比棱柱体试件能更好地反映混凝土的实际受压 情况 D.混凝土试件与压力机垫板间的摩擦力使得混凝土的抗压强度提高 3. ( B ) A. a B. b C. c D. d 4.在保持不变的长期荷载作用下,钢筋混凝土轴心受压构件中,()。 ( C )

A.徐变使混凝土压应力减小 B.混凝土及钢筋的压应力均不变 C.徐变使混凝土压应力减小,钢筋压应力增大 D.徐变使混凝土压应力增大,钢筋压应力减小 5.适筋梁在逐渐加载过程中,当受拉钢筋刚刚屈服后,则()。 ( D ) A.该梁达到最大承载力而立即破坏 B.该梁达到最大承载力,一直维持到受压区边缘混凝土达到极限压应 变而破坏 C.该梁达到最大承载力,随后承载力缓慢下降,直至破坏 D.该梁承载力略有增加,待受压区边缘混凝土达到极限压应变而破坏 6. ( B ) A. a B. b C. c D. d 7.提高受弯构件正截面受弯能力最有效的方法是()。 ( C ) A.提高混凝土强度等级 B.增加保护层厚度 C.增加截面高度 D.增加截面宽度 8.在T形截面梁的正截面承载力计算中,假定在受压区翼缘计算宽度b′ f 内,()。 ( A ) A.压应力均匀分布 B.压应力按抛物线型分布

数据结构大作业

浙江大学城市学院实验报告 课程名称数据结构基础 实验项目名称实验九栈的应用 学生姓名丁汀专业班级信管1006 学号31001444 实验成绩指导老师(签名)日期 一.实验目的和要求 1、学会通过对问题的分析,设计一种合理的数据结构,并进行定义及操作的实现。 2、掌握利用栈各种操作来进行具体的实际应用。 3、加强综合程序的分析、设计能力。 二.实验内容 1、共享栈的设置,问题描述如下: 在一个数组空间stack[MaxSize]中可以同时存放两个顺序栈,栈底分别处在数组的两端,当第1个栈的栈顶指针top1等于-1时则栈1为空,当第2个栈的栈顶指针top2等于MaxSize时则栈2为空。两个栈均向中间增长,当有元素向栈1进栈时,使top1增1得到新的栈顶位置,当有元素向栈2进栈时,使top2减1得到新的栈顶位置。当top1==top2-1或top1+1==top2时,存储空间用完,无法再向任一栈做进栈操作,此时可考虑给出错误信息并停止运行。 要求: ⑴给出共享栈的顺序存储类型定义。 ⑵给出共享栈的抽象数据类型定义。 ⑶建立头文件test9_stack.h,包含共享栈的基本操作实现函数;建立主程序文件test9.cpp,在主函数中对共享栈的各个操作进行测试。 2、利用上述共享栈,实现火车车厢的调度模拟 设火车车厢分为三类:硬座、硬卧、软卧,分别用A、B、C表示。下图描述车厢调度的示意图,图中右端为排列无序的车厢,左端为调度后的车厢排列,使得所有软卧车厢在最前面、所有硬卧车厢在中间、所有硬座车厢在最后。 编程模拟上述车厢调度过程。 提示:两个辅助铁轨相当于两个栈,右端车厢进入用相应字符串给出,如“BBACBCAABBCAA”,左端车厢的用新生成的字符串给出。在test9_stack.h 给出模拟函数,并在主函数中进行调用测试。

数据结构大作业报告

数据结构大作业报告 数据结构大作业实验报告课程名称:数据结构设计题目:客户去银行储蓄模拟程序一( 实验题目 (1)内容描述:编写一个程序反映客户到银行储蓄的过程。 (2)基本要求:要实现以下功能:1:排队 2:储蓄 3:查看排队4.:删除自己所排的队 5.不再排队,剩下的客户依次储蓄 6:下班 二( 实验的工程组成图和程序结构图 main bank 本工程的组成结构如左图所示,程序结构图如右图所示。三( 工程所包含的函数的功能描述 Bank():模拟客户到银行去储蓄的过程。客户排队储蓄,所以要用到一个队列, 这里设计了一个不带头结点的单链表作为队列。 四( 实验工程的算法描述及流程图 //客户排队去银行储蓄,用到了队列的知识,这里设计了一个不带头结点的单链表作为队列来完成排队储蓄过程 #include

#include typedef struct qnode { int data; struct qnode *next; } QNode; //定义链队结点类型 typedef struct { QNode *front,*rear; } QType; //定义链队类型 void bank() //模拟客户储蓄的过程 { int cho,onwork=1,no,find; QType *q; //定义链队类型的指针 QNode *p,*r; //定义链队结点的指针 q=(QType *)malloc(sizeof(QType)); //申请链队的空间 q->front=q->rear=NULL; //创建空队 while (onwork==1) //循环执行 { printf("1:排队 2:储蓄 3:查看排队4:删除自己所排的队 5:不再排队,剩下的客户依次储蓄 6:下班请选择:"); scanf("%d",&cho); switch(cho) { case 1://排队

数据结构大作业要求

数据结构实验讲义 一实验步骤 随之计算机性能的提高,它所面临的软件开发的复杂度也日趋增加。然而,编制一个10,000行的程序的难度绝不仅仅是一个5,000行的程序两倍,因此软件开发需要系统的方法。一种常用的软件开发方法,是将软件开发过程划分为分析、设计、实现和维护四个阶段。虽然数据结构课程中的实习题的复杂度远不如(从实际问题中提出来的)一个“真正的,,软件,但为了培养一个软件工作者所应具备的科学工作的方法和作风,我们制订了如下所述完成实习的五个步骤:’ (一)问题分析和任务定义 通常,实习题目的陈述比较简洁,或者说是有模棱两可的含义。因此,在进行设计之前,首先应该充分地分析和理解问题,明确问题要求做什么?限制条件是什么。注意:本步骤强调的是做什么?而不是怎么做。对问题的描述应避开算法和所涉及的数据类型,而是对所需完成的任务作出明确的回答。例如:输入数据的类型、值的范围以及输入的形式;输出数据的类型、值的范围及输出的形式;若是会话式的输入,则结束标志是什么?是否接受非法的输入?对非法输入的回答方式是什么等。这一步还应该为调试程序准备好测试数据,包括合法的输入数据和非法形式的输入数据。 (二)数据类型和系统设计 在设计这一步骤中需分逻辑设计和详细设计两步实现。逻辑设计指的是,对问题描述中涉及的操作对象定义相应的数据类型,并按照以数据结构为中心的原则划分模块,定义主程序模块和各抽象数据类型;详细设计则为定义相应的存储结构并写出各函数的伪码算法。在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。作为逻辑设计的结果,应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的规格说明),各个主要模块的算法,并画出模块之间的调用关系图。详细设计的结果是对数据结构和基本操作的规格说明作出进一步的求精,写出数据存储结构的类型定义,按照算法书写规范用类c语言写出函数形式的算法框架。在求精的过程中,应尽量避免陷入语言细节,不必过早表述辅助数据结构和局部变量。 (三)编码实现和静态检查 编码是把详细设计的结果进一步求精为程序设计语言程序。程序的每行不要超过60个字符。每个函数体,即不计首部和规格说明部分,一般不要超过40行,最长不得超过60行,否则应该分割成较小的函数。要控制if语句连续嵌套的深度。其他要求参见第一篇的

机械原理大作业3 凸轮结构设计

机械原理大作业(二) 作业名称:机械原理 设计题目:凸轮机构设计 院系:机电工程学院 班级: 设计者: 学号: 指导教师:丁刚陈明 设计时间: 哈尔滨工业大学机械设计

1.设计题目 如图所示直动从动件盘形凸轮机构,根据其原始参数设计该凸轮。 表一:凸轮机构原始参数 序号升程 (mm) 升程运动 角(o) 升程运动 规律 升程许用 压力角 (o) 回程运动 角(o) 回程运动 规律 回程许用 压力角 (o) 远休止角 (o) 近休止角 (o) 12 80 150 正弦加速 度30 100 正弦加速 度 60 60 50 2.凸轮推杆运动规律 (1)推杆升程运动方程 S=h[φ/Φ0-sin(2πφ/Φ0)]

V=hω1/Φ0[1-cos(2πφ/Φ0)] a=2πhω12sin(2πφ/Φ0)/Φ02 式中: h=150,Φ0=5π/6,0<=φ<=Φ0,ω1=1(为方便计算) (2)推杆回程运动方程 S=h[1-T/Φ1+sin(2πT/Φ1)/2π] V= -hω1/Φ1[1-cos(2πT/Φ1)] a= -2πhω12sin(2πT/Φ1)/Φ12 式中: h=150,Φ1=5π/9,7π/6<=φ<=31π/18,T=φ-7π/6 3.运动线图及凸轮线图 运动线图: 用Matlab编程所得源程序如下: t=0:pi/500:2*pi; w1=1;h=150; leng=length(t); for m=1:leng; if t(m)<=5*pi/6 S(m) = h*(t(m)/(5*pi/6)-sin(2*pi*t(m)/(5*pi/6))/(2*pi)); v(m)=h*w1*(1-cos(2*pi*t(m)/(5*pi/6)))/(5*pi/6); a(m)=2*h*w1*w1*sin(2*pi*t(m)/(5*pi/6))/((5*pi/6)*(5*pi/6)); % 求退程位移,速度,加速度 elseif t(m)<=7*pi/6 S(m)=h; v(m)=0; a(m)=0; % 求远休止位移,速度,加速度 elseif t(m)<=31*pi/18 T(m)=t(m)-21*pi/18; S(m)=h*(1-T(m)/(5*pi/9)+sin(2*pi*T(m)/(5*pi/9))/(2*pi)); v(m)=-h/(5*pi/9)*(1-cos(2*pi*T(m)/(5*pi/9))); a(m)=-2*pi*h/(5*pi/9)^2*sin(2*pi*T(m)/(5*pi/9)); % 求回程位移,速度,加速度

结构设计原理第一次作业答案

首页-我的作业列表-《结构设计原理》第一次作业答案 欢迎你,刘晓星(DI4131R6009 '你的得分:100.0 完成日期:2014年07月02日10点04分 一、单项选择题。本大题共25个小题,每小题2.0 分,共50.0分。在每小题给出的选项中,只有一 项是符合题目要求的。 若用S表示结构或构件截面上的荷载效应,用R表示结构或构件截面的抗力,结构或构件截面处于极限状态时,对应于()式。 (B ) R> S R= S R v S R WS 对所有钢筋混凝土结构构件都应进行()。 (D ) 抗裂度验算 裂缝宽度验算 变形验算 承载能力计算混凝土各项强度指标的基本代表值是()。 (B ) 轴心抗压强度标准值立方体抗压强度标准值 轴心抗压强度平均值立方体抗压强度平均值 工程结构的可靠指标3与失效概率P f之间存在下列()关系。 (D ) 3愈大,P f愈大 3与P f呈反比关系 3与P f呈正比关系 3与P f存在一一对应关系,3 愈大,P f愈小

(B ) a b c d 热轧钢筋冷拉后,()。 (A ) 可提高抗拉强度和抗压强度只能提高抗拉强度 可提高塑性,强度提高不多 只能提高抗压强度 无明显流幅钢筋的强度设计值是按()确定的。 (C ) 材料强度标准值x材料分布系数 材料强度标准值/材料分项系数 0.85 x材料强度标准值/材料分项系数 材料强度标准值/ (0.85 x材料分项系数) 钢筋混凝土梁的受拉区边缘混凝土达到下述哪一种情况时,开始出现裂缝?( ) (A ) 达到混凝土实际的轴心抗拉强度 达到混凝土轴心抗拉强度标准值 达到混凝土轴心抗拉强度设计值 达到混凝土弯曲受拉时的极限拉应变值 (D ) a b c d

家谱管理系统 -数据结构大作业

/* 家谱管理系统 任务:实现具有下列功能的家谱管理系统 功能要求: 1). 输入文件以存放最初家谱中各成员的信息,成员的信息中均应包含以下内容: 姓名、出生日期、婚否、地址、健在否、死亡日期(若其已死亡),也可附加其它信息、但不是必需的。 2). 实现数据的存盘和读盘。 3). 以图形方式显示家谱。 4). 显示第n 代所有人的信息。 5). 按照姓名查询,输出成员信息(包括其本人、父亲、孩子的信息)。 6). 按照出生日期查询成员名单。 7). 输入两人姓名,确定其关系。 8). 某成员添加孩子。 9). 删除某成员(若其还有后代,则一并删除)。 10).修改某成员信息。 11).按出生日期对家谱中所有人排序。 12).打开一家谱时,提示当天生日的健在成员。 要求:建立至少30个成员的数据,以较为直观的方式显示结果,并提供文稿形式以便检查。界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。存储结构:学生自己根据系统功能要求自己设计,但是要求相关数据要存储在数据文件中。测试数据:要求使用1、全部合法数据;2、局部非法数据。进行程序测试,以保证程序的稳定。 测试数据及测试结果请在上交的资料中写明; */ #include #include #include #include #include"map.h" #define MAXN 100 #define MAXMEM 100 #define Elemtype char ============================== //树 typedef struct BiTNode { int mark;//标记 int level; char name[50];//姓名 char birthday[50];//生日

大数据结构大作业报告材料

数据结构课程设计课题名称 专业名称 学生姓名 学号+电话 指导教师

评分细则

目录 评分细则----------------------------------------------------------------------------------------------------------------- 2 一、课题描述 ---------------------------------------------------------------------------------------------------------- 4 二、需求分析 ---------------------------------------------------------------------------------------------------------- 4 2.1 ------------------------------------------------------------------------------------------------------------------ 4 2.2- ------------------------------------------------------------------------------------------------------------------4 2.3--------------------------------------------------------------------------------------------------------------------4 三、概要设计 ---------------------------------------------------------------------------------------------------------- 4 3.1 结构分析 ----------------------------------------------------------------------------------------------------------- 4 3.2函数------------------------------------------------------------------------------------------------------------ 4 3.2.1 malloc() --------------------------------------------------------------------------------------------- 4 3.2.2getchar() ----------------------------------------------------------------------------------------------------- 5 3.2.3 list_create() ------------------------------------------------------------------------------------------------ 5 3.2.4 list_disp() --------------------------------------------------------------------------------------------------- 5 3.2.5 list_sort() --------------------------------------------------------------------------------------------------- 5 四、详细设计 ---------------------------------------------------------------------------------------------------------- 5 4.1课题分析 ----------------------------------------------------------------------------------------------------- 5 4.1.1选择 ------------------------------------------------------------------------------------------------- 5 4.1.2冒泡 --------------------------------------------------------------------------------------------------------- 5 4.1.3 堆------------------------------------------------------------------------------------------------------------ 6 4.1.4 快速--------------------------------------------------------------------------------------------------------- 6 4.1.5 基数--------------------------------------------------------------------------------------------------6 4.1.6 希尔--------------------------------------------------------------------------------------------------------- 6 4.1.7 归并--------------------------------------------------------------------------------------------------6 4.2课题实现 ----------------------------------------------------------------------------------------------------- 7 五、测试数据及结果------------------------------------------------------------------------------------------------- 9 六、调试分析及总结----------------------------------------------------------------------------------------------- 10

高层建筑结构大作业.doc

作业 说明:《高层建筑结构》是应用性较强的课程,为了培养学生的设计能力,掌 握核心知识点,同时也为了较大程度地减轻学生的课业负担,这次作业没有考 虑大型设计作业,而是采用了分散的题型,请大家在规定的时间内完成作业。 一、基础题 1,一幢 10 层的框架结构,柱网尺寸为8m× 8m,混凝土强度等级C30,试完成下列各题: (1)按高规条估算底层中框架柱的截面尺寸。 (2)假设天然地基承载力设计值 fa=120kPa,确定底层中框架柱的基础尺寸 (独 立基础 )。 答:(1)《高层建筑混凝土结构技术规程》 P66,抗震设计时,钢筋混凝土柱轴 压比不宜超过表的规定:对于 VI 类场地上较高的高层建筑,其轴压比限值应适当 减小 框架结构三类抗震等级,柱子轴压比限值为 .根据《混凝土结构设计规范》可知,当选用 HrB400 钢筋时,竹子的配筋率最小为 %,最大为 5%。珠子配筋率选为 4% 。则混凝土柱承受的最大轴向应力值σ=*360+*30=。 《高层建筑结构设计》 P13,楼层竖向荷载值取 13KN/m2.仅考虑柱子受竖向荷载作用,则每根珠子承受的竖向荷载值 N=10*64*13=8320KN。柱子的截面积 S=(* )=,设柱子截面为方形,边长 a=。 (2) 8320./120=,设独立基础为方形,边长 b=。 2,确定上海市奉贤区海湾镇、南桥镇和徐汇区的徐家汇等区域的地面粗糙度。 答:《高层建筑结构设计》 P13 提到,地面粗糙度应分为四类: A 类指近海海面和 海盗、海岸、湖岸及沙漠地区; B 类指田野、乡村、丛林、丘陵以及房屋比较稀疏 的乡镇和城市郊区; C 类指有墨迹建筑群的城市市区; D 类指有密集建筑群且房屋较高的城市市区。

结构优化设计大作业(北航)

《结构优化设计》 大作业报告 实验名称: 拓扑优化计算与分析 1、引言 大型的复杂结构诸如飞机、汽车中的复杂部件及桥梁等大型工程的设计问题,依靠传统的经验和模拟实验的优化设计方法已难以胜任,拓扑优化方法成为解决该问题的关键手段。近年来拓扑优化的研究的热点集中在其工程应用上,如: 用拓扑优化方法进行微型柔性机构的设计,车门设计,飞机加强框设计,机翼前缘肋设计,卫星结构设计等。在其具体的操作实现上有两种方法,一是采用计算机语言编程计算,该方法的优点是能最大限度的控制优化过程,改善优化过程中出现的诸如棋盘格现象等数值不稳定现象,得到较理想的优化结果,其缺点是计算规模过于庞大,计算效率太低;二是借助于商用有限元软件平台。本文基于matlab软件编程研究了不同边界条件平面薄板结构的在各种受力情况下拓扑优化,给出了几种典型结构的算例,并探讨了在实际优化中优化效果随各参数的变化,有助于初学者初涉拓扑优化的读者对拓扑优化有个基础的认识。

2、拓扑优化研究现状 结构拓扑优化是近20年来从结构优化研究中派生出来的新分支,它在计算结构力学中已经被认为是最富挑战性的一类研究工作。目前有关结构拓扑优化的工程应用研究还很不成熟,在国外处在发展的初期,尤其在国内尚属于起步阶段。1904 年Michell在桁架理论中首次提出了拓扑优化的概念。自1964 年Dorn等人提出基结构法,将数值方法引入拓扑优化领域,拓扑优化研究开始活跃。20 世纪80 年代初,程耿东和N. Olhoff在弹性板的最优厚度分布研究中首次将最优拓扑问题转化为尺寸优化问题,他们开创性的工作引起了众多学者的研究兴趣。1988年Bendsoe和Kikuchi发表的基于均匀化理论的结构拓扑优化设计,开创了连续体结构拓扑优化设计研究的新局面。1993年Xie.Y.M和Steven.G.P 提出了渐进结构优化法。1999年Bendsoe和Sigmund证实了变密度法物理意义的存在性。2002 年罗鹰等提出三角网格进化法,该方法在优化过程中实现了退化和进化的统一,提高了优化效率。目前常使用的拓扑优化设计方法可以分为两大类:退化法和进化法。结构拓扑优化设计研究,已被广泛应用于建筑、航天航空、机械、海洋工程、生物医学及船舶制造等领域。 3、拓扑优化建模(SIMP) 结构拓扑优化目前的主要研究对象是连续体结构。优化的基本方法是将设计区域划分为有限单元,依据一定的算法删除部分区域,形成带孔的连续体,实现连续体的拓扑优化。连续体结构拓扑优化方法目前比较成熟的是均匀化方法、变密度方法和渐进结构优化方法。 变密度法以连续变量的密度函数形式显式地表达单元相对密度与材料弹性模量之间的对应关系,这种方法基于各向同性材料,不需要引入微结构和附加的均匀化过程,它以每个单元的相对密度作为设计变量,人为假定相对密度和材料弹性模量之间的某种对应关系,程序实现简单,计算效率高。变密度法中常用的插值模型主要有:固体各向同性惩罚微结构模型(solidisotropic microstructures with penalization,简称SIMP)和材料属性的合理近似模型(rational approximation ofmaterial properties,简称RAMP)。而本文所用即为SIMP插值模型。

软件设计大作业

一需求分析 此系统是一个类似于淘宝网的在线衣服销售系统,相当于淘宝网上的一个专门买衣服的网店,它具有用户注册,用户登录,修改密码,显示系统功能,查看订购历史以及订货。 1.1需求列表: (1)用户管理:用户管理的需求包括用户注册,用户登录以及修改密码。 用户注册是添加一个我们网上衣店的新用户;用户登录是用户想要进 入系统时必须采取验证身份的步骤;修改密码是为了用户的安全性考 虑,当密码存在不安全的因素时,适时修改密码。 (2)商品衣服的管理:商品管理包括订购衣服和查看订购衣服的历史。订购衣服是当我们衣店的库存数量不足时必须采取的;查看订购衣服的 历史有助于我们更好地了解衣服的订购情况。 (3)显示系统功能:此功能是用来让用户能很清楚地了解此系统所实现的各种功能。 1.2系统用例图:

1.3用例分析及场景描述: 用户注册用例: 这部分主要是新用户进行注册的过程,首先用户进入到注册页面,填写注册信息并提交,如果无误的话系统会给予注册成功的提示,如果注册失败会提示注册失败信息。 用户登录用例: 此功能模块针对的对象是本网站的会员既已经注册的会员,会员首先填写用户名和密码,然后点击登录按钮,如果网站数据库中存在此会员并且密码正确则提示登录成功提示,如果网站不存在此用户或密码不正确,系统会提示用户登录失败。 修改密码用例: 此用例针对注册会员进行操作。用户登录成功会可以进入网站主页面,如果用户想修改密码的话可以单击修改密码按钮,进行密码修改,用户输入新密码单击修改按钮即可完成密码修改。

显示系统功能用例: 此功能针对注册会员,会员首先登录到网站,进入主页,主页会有相关操作的按钮,显示系统所提供给会员操作的功能,用户可以针对自己的需要选择系统提供的功能。 订货衣服用例: 此功能针对注册登录会员,网站提供两种订购方案:单件订购和定制套装。用户可以根据自己的需求来选择。 单件订购方案:用户选择是上衣还是裤子,并填写订购的数量,确认无误后单击订购按钮即可,如果订购成功,系统会提示订购成功,失败则会提示订购失败。 定制套装方案:用户选择定制套装的档次(高、中、低),并填写订购的数量,确认无误后单击订购按钮即可,如果订购成功,系统会提示订购成功,失败则会提示订购失败。 显示订购历史用例: 此功能针对注册会员,用户登录到系统后,主页显示系统功能中包括历史查看选项,用户可以单击进入历史交易记录页面,页面将显示用户所有的交易记录。 二设计模式 2.1单件模式 2.1.1单件模式的定义

10路桥 结构设计原理大作业

某装配式钢筋混凝土简支T形梁设计 一、设计资料 (一)桥梁基本概况 1.桥面净空:净-7m+2×1.5m 2.设计荷载:公路-Ⅱ级汽车荷载,人群3.5KN/m2,结构安全等级为二级,内力计算结果见(二)3.材料规格: Ⅰ类环境条件,钢筋及混凝土材料规格由学生根据相关规定自选 4.结构尺寸: T形主梁:标准跨径L b=20.00m,计算跨径L j=19.50m,主梁全长L=19.96m 横断面及尺寸如图所示: 图1 桥面剖面示意图 图2 T梁横断面尺寸(mm) (二)内力计算(结果摘抄) 表1:弯矩标准值M d汇总表KN·m

表2 剪力标准值V d汇总表KN 二、设计依据 中华人民共和国行业标准《公路钢筋混凝土及预应力混凝土桥涵设计规范》JTG D62-2004 中华人民共和国行业标准《公路桥涵设计通用规范》JTG D60-2004 三、提交成果及要求 1.设计说明书一份 要求:内容完整,设计合理,引用公式正确,计算准确,书写工整; 2.一片主梁配筋图一张 内容:主梁配筋图、钢筋大样图 要求:用白绘图纸,绘3号图(可加长),作图规范,有图框、有标题栏,用铅笔绘图,写工程字; 3.必须自己独立完成设计,不得抄袭,一经发现抄袭者按零分处理。 四、参考文献 1.叶见曙主编,《结构设计原理》人民交通出版社第二版2005; 2.赵顺波主编:《混凝土结构设计原理》,同济大学出版社,2004.8; 3.张树仁等,《钢筋混凝土及预应力混凝土桥梁结构设计原理》,人民交通出版社,200 4.9 4.中华人民共和国行业标准:《公路钢筋混凝土及预应力混凝土桥涵设计规范》,人民交通出版社, 2004.10。 注:提交成果可用计算机完成,但必须打印规范,作图正确。

数据结构大作业

数据结构课程设计 题目:长整数四则运算 班级:信管12-1 学号:1201050642 姓名:庄术洁 指导老师:刘晓庆 2014年5月22日

一、需求分析 1、利用双向循环链表实现长整数的存储,每个结点含一个整数变量。任何整形变量的范围是—(2^15—1)~(2^15—1)。输入和输出形式:按中国对于长证书的表示习惯,每四位一组,组间用逗号隔开。 2、测试数据 (1) 0; 0;应输出“0” (2)—2345,6789;—7654,3211;应输出“—1,0000,0000”。 (3)—9999,9999;1,0000,0000,0000;应输出“9999,0000,0001”。 (4)1,0001,0001;—1,0001,0001;应输出“0”。 (5)1,0001,0001;—1,0001,0000;应输入“1”。 (6)—9999,9999,9999;—9999,9999,9999;应输出“—1,9999,9999,9998”。 (7)1,0000,9999,9999;1应输出“1,0001,0000,0000”。 二、概要设计 为上述程序功能,应以有序表实现长整数的存储,为此,需要抽象数据类型:有序表

(8)有序表的抽象数据类型定义为: ADT Dulinklist{ 数据对象: D={ai|ai为带符号整数,1,2,…,n,n>=0} 数据关系:R1={|ai-1,ai属于集合D,ai-1

数据结构大作业-纸牌游戏

数据结构课程设计大作业 题目纸牌游戏 专业计算机科学与技术 学生姓名 __________________ 学号 _____________________ 指导教师 __________________ 完成日期 __________________ 信息与工程学院

目录 一、实验内容概述(设计任务与技术要求) (1) 二、实验目的概述(总体设计方案) (1) 三、解题思路的描述(数据结构和算法的设计): (1) 四、源程序清单(源程序中应该附有必要的注释) (2) 五、程序调试及测试结果 (4) 六、结论 (4) 七、参考文献 (5)

【内容摘要】 编号为1~52的牌,正面向上,从第二张开始,以2为基数,是2的倍数的牌翻一次,直到最 后一张牌;然后,从第三张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后从 第四张开始,以4为基数,是4的倍数的牌翻一次,直到最后一张牌;依次类推,知道所有以52 为基数的牌翻过一次。输出:这时正面向上的牌有哪些? 【关键字】 52张纸牌,倍数,基数,数组 【Abstract 】 Numbered 1 to 52 cards, face up, starting from the second to 2 as the base, is a multiple of 2 cards turning on ce, un til the last card; and the n, begi nning from the third to 3 as the base,is a multiple of 3 cards turning once, un til the last card; and the n start from the fourth to 4 as the base, is a multiple of 4 cards turning once, un til the last card; and so on, that was all of 52base of the card turned over on ce.Output: At this time what the cards face up? 【Key words 】 52 cards, multiple, base, array

大工19秋《结构设计原理》大作业题目及要求参考答案

大连理工大学《结构设计原理》大作业 学习中心: 姓 名: 学 号: 题目二:钢结构题目。 已知钢屋架的端斜杆,截面为双角钢2∟125×80×10,长肢相连,如下图所示,承受的轴心拉力设计值kN 550=N ,两主轴方向计算长度分别为cm 240y 00==l l x ,试验算此截面的整体稳定性。钢材为Q235。 y y x x 122∟125×80×10 解:本题为双角钢轴压构件整体稳定验算,由于截面为单轴对称的构件,因此, 绕非对称轴x 轴的长细比用0x x x l i λ=计算,但绕对称轴y 轴应取计及扭转效应的换算长细比yz λ代替y λ。 (1)计算用数据 由附表可得:2215/f N mm =,239.4A cm =,

3.98x i cm =, 3.39y i cm = (2)计算长细比 024060.303.98 x x x l i λ=== 024070.803.39 y y y l i λ=== 绕y 轴的长细比采用换算长细比yz λ代替y λ, 022824080.480.4814.418 y l b t b ==<=?= 442222201.09 1.098170.80176.292401yz y y b l t λλ?????=+=?+= ? ? ?????? (3)验算整体稳定性 对x 、y 轴均属于b 类截面,且yz λ>x λ,由附表得:0.712yz ?= 3 22255010196.06/215/0.71239.410yz N N mm N mm A ??==

题目四:砌体结构中,高厚比的概念及其影响是? 答:砌体受压构件的计算高度与相应方向边长的比值称为高厚比。 影响砌体高厚比的主要因素有:砂浆强度;构件强度;砌体种类;支撑约束条件、截面形式;墙体开洞、承重和非承重。

相关文档