软件大作业

合集下载

excel大作业制作技巧和操作技巧

excel大作业制作技巧和操作技巧

Excel大作业制作技巧和操作技巧1. 介绍Excel是一款功能强大的电子表格软件,被广泛应用于各种场合,包括商业、教育、科研等领域。

在各种大作业中,Excel的应用也越来越广泛。

掌握Excel的制作技巧和操作技巧对于提高工作效率和准确性至关重要。

本文将从实际应用出发,为大家介绍一些在Excel大作业制作中常用的技巧和操作方法。

2. 单元格格式设置在Excel的大作业制作中,单元格的格式设置非常重要。

正确的格式设置可以使数据更加直观、清晰,方便阅读和理解。

下面是一些常用的单元格格式设置技巧:(1)数字格式:在Excel中,我们可以根据需要将单元格设置为各种不同的数字格式,如货币格式、百分比格式等。

这样做可以使数字更加清晰直观,提高数据表的可读性。

(2)日期格式:在Excel中,日期也是常见的数据类型。

正确的日期格式设置可以使日期数据更加易读、易懂。

Excel还支持自定义日期格式,用户可以根据需要自定义各种日期格式,满足不同的需求。

(3)文本格式:在Excel中,我们还可以将单元格设置为文本格式,这样可以保证文本数据的原始格式不会被改变,避免出现意外的数据处理问题。

3. 公式和函数的应用在Excel的大作业制作中,公式和函数的应用是非常重要的。

通过合理的公式和函数应用,我们可以快速准确地进行数据计算和分析,提高工作效率。

下面是一些常用的公式和函数应用技巧:(1)基本公式:在Excel中,我们可以使用各种基本的数学公式,如加减乘除等,进行数据计算。

另外,Excel还支持各种常用的数学函数,如SUM、AVERAGE、MAX、MIN等,这些函数都能够方便快捷地进行数据计算和分析。

(2)逻辑函数:在实际的大作业制作中,我们可能需要进行一些逻辑运算,如判断、筛选等。

这时,逻辑函数就非常有用了,如IF、AND、OR等函数可以帮助我们快速准确地进行复杂的逻辑运算。

(3)查找函数:有时候我们需要在数据表中查找特定的数据或者进行数据匹配。

东南大学软件学院研究生人工智能期末大作业

东南大学软件学院研究生人工智能期末大作业

研究生课程考试成绩单(试卷封面)任课教师签名:日期:注:1. 以论文或大作业为考核方式的课程必须填此表,综合考试可不填。

“简要评语”栏缺填无效。

2.任课教师填写后与试卷一起送院系研究生秘书处。

3. 学位课总评成绩以百分制计分。

一、基本技术介绍1、智能Agent(1)概念:Agent能够通过传感器感知环境,通过执行器的动作作用于环境。

在Agent的概念框架下,AI的任务就是设计和建造理性的Agent,所以人们更为关心的是理性Agent。

理性Agent对每一个可能的感知序列,根据已知的感知序列提供的证据和Agent具有的先验知识,理性Agent应该选择能使其性能度量最大化的行动。

(2)特点:从感知序列到行动的理想映射,在很多情形下有可能设计一个好的、紧凑的Agent 来实现映射。

一个真正的智能Agent在有足够时间去学习调整的条件下,应当在各种类型环境下做出成功的行动(自主性)。

(3)结构:从传感器中将感知送到程序,运行程序,并将程序的行动选择送到作用体,这样就完成了一次Agent的工作过程。

Agent、结构和程序三者间关系为:Agent=结构+程序。

(4)环境:Agent施加行动于环境中,环境反过来又为Agent提供感知。

不同的环境要求用不同的Agent程序与之对应。

(5)AI与agent:在智能 agent的概念框架下,AI的任务就是设计和建造理性的、适合不同任务和环境特征的各种agent,由此将AI领域的各部分内容加以组织使它们有机联系在一起2、基于知识的Agent(1)概念:智能获得不是靠反射机制而是对知识的内部表示进行操作的推理过程,在AI的世界里,这种智能方法体现在基于知识的Agent上。

用逻辑作为支持基于知识的Agent的一类通用表示。

基于知识的Agent的核心部件是知识库,知识库是一个语句集合。

这些语句用知识表示语言表达。

(2)基于知识的Agent的程序概述:基于知识的Agent用感知信息作为输入,返回一个行动。

办公软件应用大作业

办公软件应用大作业

《办公软件应用》大作业要求一、本题共5小题,满分15分。

Windows基本操作题注意:下面出现的“考生文件夹”均为“0000001A”文件夹。

1、将考生文件夹下COFF\JIN文件夹中的文件MONEY.TXT设置成隐藏和只读属性。

(3分)2、将考生文件夹下DOSION文件夹中的文件HDLS.SEL复制到同一文件夹中,文件命名为AEUT.SEL。

(3分)3、在考生文件夹下SORRY文件夹中新建一个文件夹WINBJ。

(3分)4、将考生文件夹下WORD2文件夹中的文件A-EXCEL.MAP删除。

(3分)5、将考生文件夹下STORY文件夹中的文件夹ENGLISH重命名为CHUN。

(3分)二、本题共5小题,满分35分。

文字处理题注意:下面出现的“考生文件夹”均为“0000001A”文件夹。

1、打开文档WORD.DOCX,按照要求完成下列操作并以该文件名(WORD.DOCX)保存文档。

(1)将标题段("8086/8088CPU的BIU和EU")的中文设置为四号红色宋体、英文设置为四号红色Arial字体;标题段居中、字符间距加宽2磅。

(7分)(2)将正文各段文字("从功能上看……FLAGS中。

")的中文设置为五号仿宋、英文设置为五号Arial字体;各段落首行缩进2字符、段前间距0.5行。

(7分)(3)为文中所有"数据"一词加粗并添加着重号;将正文第三段("EU的功能是……FLAGS中。

")分为等宽的两栏、栏宽18字符、栏间加分隔线。

(6分)2、在考生文件夹下,打开文档WORD2.DOCX,按照要求完成下列操作并以该文件名(WORD2.DOCX)保存文档。

(1)为表格第1行第2列单元格中的"[X]"添加"补码"下标;设置表格居中;设置表格中第1行文字水平居中,其它各行文字中部右对齐。

(6分)(2)设置表格列宽为2厘米、行高为0.6厘米;设置外框线为红色1.5磅双窄线、内框线为绿色(标准色)1磅单实线、第1行单元格为黄色底纹。

办公软件应用 大作业任务书

办公软件应用 大作业任务书

《办公软件应用》大作业任务书
1、选题
根据自己的学习情况和兴趣自主选题,可以融合office的word、excel和powerpoint三种应用,也可只选择powerpoint幻灯片制作。

2、内容要求
内容应全面反映所选主题,清楚表达主题,层次分明,条理清晰,结构合理。

作业分为三个部分:
第一部分介绍全文所要实现的效果和用到的操作;
第二部分介绍操作过程;
第三部分为作业成果展示。

3、格式要求
在上交的打印版中,页面设置及格式应美观、合理。

打印版的作业中,有些效果无法用文字描述清楚,需用电子版表现的,可在打印版中附加说明。

在随附的电子版中,若是关于Word文档的应用,则电子版应用打印版一致;若是关于excel工作表的应用,则电子版中应附有excel 工作簿的相关实现内容;若是关于PowerPoint演示文稿的应用,效果可在幻灯片放映中实现。

4、作业于课后完成,第14周周五前上交。

简易画图软件之大作业报告

简易画图软件之大作业报告

“windows编程”大作业报告题目:绘图程序姓名:学号:班级:任课老师:日期:2012年5月31日1.系统概述本软件是利用VC++这个强大的可视化编程工具开发的。

软件主要功能包括图形的绘制、线型的设置、颜色的设置,图形文件的重绘和保存等功能。

本软件具有实用性、稳定性、易用性,和可维护性的特点,应该说它应是一个开放性的软件,用户可以根据需要对其功能进行扩充、晚上与修改,是其符合自己的要求。

总之。

本软件是一个逐步晚上的软件。

2.程序功能及操作说明(1)画点的实现:在编辑菜单里选择绘制菜单—>点(2)画直线的实现:选择画笔样式(线型)->选择画板(颜色)->点击编辑菜单上的直线选项形选项椭圆选项连续线选项(6)坐标的实现:在可编辑区域内显示鼠标所在的位置3.程序结构分析首先,新建一个单文档类型的MFC AppWizard(exe)工程,工程取名为:Graphic。

为次程序添加一个子菜单,菜单名称为“绘图”,并为其添加五个菜单项,分别用来控制不同图形的绘制。

当用户选择其中的一个菜单项后,程序将按照当前的选择进行和相应图形的绘制。

添加的五个菜单项的ID及名称如表1所示。

然后分别为这五个菜单项添加命令响应,本程序让视图(CCGraphic View)对这些菜单命令进行响应,这五个响应函数的名称分别如表1所示。

表格 1 添加的菜单项以便随后的绘图操作使用。

因此在CCGraphicView类中添加私有变量m_nDrawType;用来保存用户的选择,该变量的定义如下所述:private int m_nDrawType;接着,在视类的够着函数中将此变量初始化为0,程序代码如下:CGraphicView::CGaphicView(){//TODO:add construction code hereM_nDrawType=0;}利用switch/case语句,来分别完成相应图形的绘制。

当用户选择【绘图】菜单下的不同子菜单项时,将变量m_nDrawType设置为不同的值。

面向对象程序设计大作业参考题目及要求

面向对象程序设计大作业参考题目及要求

面向对象程序设计大作业参考题目1、学生信息管理(1)问题描述学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。

试设计一学生信息管理系统,使之能提供以下功能:●系统以菜单方式工作●学生信息录入功能(学生信息用文件保存)---输入●学生信息浏览功能——输出●查询、排序功能——算法1、按学号查询2、按姓名查询●学生信息的删除与修改(可选项)(2)功能要求●界面简单明了;●有一定的容错能力,比如输入的成绩不在0~100之间,就提示不合法,要求重新输入;●最好用链表的方式实现。

(3)算法分析首先,一个学生包括这么多的属性,应该考虑定义一个结构,其次,我们应该考虑数据的存储形式:是定义一个数组来存储,还是定义一个链表呢?在这里假如我们以数组的方式来存储,当然可以,但是我们知道,假如我们定义一个数组的话,我们首先必须知道学生人数大概是多少,以便我们确定数组的大小,但是题目中没有给出,而且题目要求中有大量的删除、插入操作,所以用链表的方式比较方便。

对于菜单的实现,其实也比较简单,首先我们用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。

文件的读写操作大家参照书中的有关文件的章节。

2、学生综合测评系统每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。

考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%。

A、学生信息处理(1) 输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号以小到大的顺序存入文件中。

提示:学生信息可先输入到数组中,排序后可写到文件中。

(2) 插入(修改)同学信息:提示:先输入将插入的同学信息,然后再打开源文件并建立新文件,把源文件和输入的信息合并到新文件中(保持按学号有序)若存在该同学则将新记录内容替换源内容,(3) 删除同学信息:提示:输入将删除同学号,读出该同学信息,要求对此进行确认,以决定是否删除将删除后的信息写到文件中。

软件系统分析与设计大作业实验报告

武汉轻工大学软件系统分析与设计大作业实验报告基于的学生信息管理系统的设计与实现学院:数学与计算机学院姓名:时保粮班级:软工一班学号:1205110210指导老师:蒋丽华2015年5月20 日一.需求分析学生信息管理系统是高校管理工作中一项非常重要的组成部分。

用户的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分地满足各种信息的输入和输出。

收集基本数据、数据结构以及数据处理的流程,为后面的设计打下基础。

本系统是针对高等院校的学生信息的后台管理,因此学生信息管理系统的用户包括系统管理员和教师用户。

主要涉及学期信息、班级信息、学生信息、课程信息、成绩信息和用户信息等数据信息。

的运用可以轻松地使用近年流行的三层结构模式开发WEB站点或基于B/S结构的应用程序。

学生成绩管理信息系统是由 Web后台进行统一管理,所有业务逻辑都集中在Web应用程序中管理和制定,具有数据的录入和查询统计等功能,客户端的分布广泛,数据集中处理,因此在设计时充分考虑各种体系结构的优缺点,选择三层WEB模式进行开发实现。

二.系统设计1.系统概要设计、图 2-1 系统概要设计图2.子模块设计以学生信息管理模块为例:图 2-2 学生信息管理模块设计图学生信息管理模块分为添加学生信息和查询信息两个界面,实现学生信息的添加和查询功能。

按照实际情况,只有查询出相应的学生信息才能对其进行修改和删除,故对学生信息的修改和删除功能集成在查询学生信息界面里。

PS:其他子模块的功能实现与此类似3.三层架构的设计模式之三层WEB结构及其优点三层模式是在两层模式的基础上,增加了新的一级。

这种模式在逻辑上将应用功能分为三层:客户显示层、业务逻辑层、数据层。

客户显示层是为客户提供应用服务的图形界面,有助于用户理解和高效的定位应用服务,负责处理用户的输入和向用户的输出,但并不负责解释其含义(出于效率的考虑,它可能在向上传输用户输入前进行合法性验证),这一层通常用前端工具(VB,VC,ASP等)开发;业务逻辑层位于显示层和数据层之间,专门为实现企业的业务逻辑提供了一个明确的层次,在这个层次封装了与系统关联的应用模型,并把用户表示层和数据库代码分开。

python大作业总结

python大作业总结
一、介绍
Python作为一门编程语言,在编程学习中非常重要,不仅被广泛用于web、移动应用等方面的开发,而且在数据挖掘、机器学习等领域也有着不可替代的地位。

本报告主要是针对有初步Python基础的同学,介绍Python大作业总结报告的一些要点,帮助同学们尽快掌握Python的基础知识,帮助同学们改进思维定势,从而提高Python编程能力。

二、Python大作业总结报告
1、完成的任务
在完成Python大作业之前,需要综合考虑项目需求、运行环境以及对程序运行的跟踪等,确保程序在实际应用中能够正确运行。

2、软件安装
在完成Python软件的安装后,可以设置不同版本的Python环境进行测试,以确保在不同系统上可以正确运行。

3、程序设计
准备好程序设计文档,并确保编译器可以正确识别程序中的标识符、类型等。

4、程序编写
使用Python编程语言编写程序,并按照程序设计文档的要求进行修改,确保程序的可读性和可维护性。

5、测试
对于刚编写的程序,必须对程序进行测试,确保在不同平台上都能正确运行,减少程序出现错误的几率。

6、代码优化
完成程序的编写与测试后,可以对程序的代码进行优化,减少程序的运行时间,提高程序的运行效率。

三、总结
总之,Python是一门新兴的编程语言,在编程任务的解决中起到非常重要的作用。

在完成Python大作业前,需要综合考虑项目需求、运行环境以及对程序运行的跟踪等,确保程序在实际应用中能够正确运行。

东南大学软件学院大数据课程大作业

基于数据挖掘技术的股票预测系统一、背景介绍股票市场在一个国家经济中所起到的作用是非常重要的,股市因受到经济、政策和投资者心理等等因素的影响,是一个非常复杂、难以预测的系统。

因为它的复杂不确定性特点,对它建立模型异常困难。

随着市场交易的数据越来越大,股票的走势价格往往就隐藏在这日益增长的大量的数据中,新的数据处理技术数据挖掘技术是一种能从大量数据中获得有用的、有价值的信息的重要方法,所以使用该技术对股票交易数据信息进行预测分析有理论上和实际上的重大意义[1]。

针对目前国内股市走势预测常常存在的种种问题,如技术指标过多,常用技术指标预测失误率高、组合指标不同的指示难以判断、预测过程计算复杂、预测结果不理想等,通过数据挖掘中的几种常用方法对技术指标建立预测模型,对预测原理、预测过程与结果进行研究,得到数据挖掘算法与股票技术指标预测的最佳组合方式。

针对股票交易数据的特征提出了相应的数据挖掘模型;首先对异常数据进行整理、选择交易数据某些特征作为测试属性;然后对决策树分类算法和贝叶斯分类算法[2]进行调整后,将数据集进行分类运算,得到分类规则,最后对分类结果进行实际检验。

通过预测分析结果与未来的股票价格走势结果对比得出结论:使用数据挖掘中的分类算法对股票价格走势进行分析预测是有效的、可行的。

利用数据挖掘中的分类与预测算法对股票技术指标进行分析、挖掘,并能生成关于股票价格走势的技术指标最佳组合的分类规则,投资者利用分析出来的分类规则科学的使用股票技术指标[3],更准确的掌握股票价格走势,提高投资收益,降低投资风险。

二、数据获取来源于雅虎金融股票,部分数据展示如下图所示:三、数据特征介绍证券分析技术指标是指由事先约定的固定算法对原始数据进行处理,处理完成后将结果制成图表,并通过这些图表对股市行情与趋势进行判断和预测。

这里的固定算法来源于统计学、心理学和概率论等领域,原始数据一般包括如:开盘价、最高价、最低价、收盘价、换手率、成交量、成交金额等数据,其特点是具体股票固有的交易数据值不能够通过技术进行修改。

JAVA程序设计课程设计大作业Java学生管理系统(一)

JAVA程序设计课程设计大作业Java学生管理系统(一)Java学生管理系统是一款面向学生的信息管理软件,全面展示学生各个方面的信息。

随着信息技术的不断进步,学生管理系统已经成为学校教育管理中必不可少的一部分。

随着学生数量的增长以及学校管理的需要,对于管理系统的需求也越来越高,要求系统更加智能化、快捷化和便捷化。

Java程序设计课程设计大作业Java学生管理系统也是为此而生。

Java学生管理系统主要是为了解决学校学生的管理问题而设计的。

学生管理系统可以对学生的各项信息进行统一管理,包括学生的个人信息、学籍信息、社团信息、成绩信息、荣誉信息等。

这些数据可以随时查询,以方便老师、家长、学生等人根据需求查看、修改等操作。

Java学生管理系统中包含多个模块,主要包括学生信息模块、课程信息模块、成绩信息模块、荣誉信息模块以及社团信息模块。

在学生信息模块中,管理员可以添加、修改、查询和删除学生的个人信息。

在课程信息模块中,管理员可以添加、修改、查询和删除课程的信息。

在成绩信息模块中,管理员可以添加、修改、查询和删除学生的成绩信息。

在荣誉信息模块中,管理员可以查询学生的荣誉信息。

在社团信息模块中,管理员可以查询学生所在的社团信息。

Java学生管理系统还包括了多种安全机制,如登录验证、权限控制等。

只有管理员才能登录系统,并通过权限控制访问特定的模块,保证了系统的安全性。

Java学生管理系统设计的核心是系统的数据结构以及数据的交互方式。

在系统中,数据是以树状结构组织起来的,各个节点之间通过指针相连。

这种数据结构的形式可以降低系统的复杂度,并使得系统更加易于管理。

总之,Java程序设计课程设计大作业Java学生管理系统是一款高效、简便、安全的学生信息管理系统。

它可以满足学校管理的需求,为了更好地适应学校管理的需要,将不断进行完善和升级。

它对于学校管理和教育工作者都是非常有益的,为了使得学校管理更加高效、自动化,推动学校信息化建设的发展。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

班 级 021291 学 号 02129057

软件技术基础上机大作业

学 院 电子工程学院

专 业 电子信息工程

学生姓名 02129057

导师姓名 周大为 1.设有一个线性表E={e1, e2, … , en-1, en},设计一个算法,将线性表逆置,即使元素排列次序颠倒过来,成为逆线性表E’={ en , en-1 , … , e2 , e1 },要求逆线性表占用原线性表空间,并且用顺序表和单链表两种方法表示,分别用两个程序来完成。 (1)顺序表逆置的代码如下: void invert(sequenlist*L) { int i=1; char temp; while (i<=(L->last/2)) //第i位元素与总长减i加一位元素交换位置 { temp=L->data[i]; L->data[i]=L->data[L->last+1-i]; L->data[L->last+1-i]=temp; i++; } } 其运行结果为:

(2)单链表逆置的代码如下: void invert(linklist * head) { linklist *q,*p,*r; p=head->next; //p指向第一个结点 q=p->next; //q指向p的指针域指向的结点 while(q!=NULL) //q不为空的时候指针依次后移 { r=q->next; q->next=p; //指针指向依次倒置 p=q; q=r; } head->next->next=NULL; //将倒置后的最后一个结点的指针域置成空 head->next=p; //把p的值赋给头结点的指针域 } 其运行结果为:

2.已知由不具有头结点的单链表表示的线性表中,含有三类字符的数据元素(字母、数字和其他字符),试编写算法构造三个以循环链表表示的线性表,使每个表中只含有同一类的字符,且利用原表中的结点空间,头结点可另辟空间。 分解单链表代码如下: void resolve(linklist*head,linklist*letter,linklist*digit,linklist*other) { linklist *p; while (head->next!=NULL) { p=head->next; head->next=head->next->next; if(p->data>='0'&&p->data<='9') //判断是否为数字 insert (digit,p); else if((p->data>='a'&&p->data<='z')||(p->data>='A'&&p->data<='Z')) //判断是否字母 insert (letter,p); else //其他情况 insert (other,p); }

} 其运行结果为: 3.设单链表中存放有n个字符,试编写算法,判断该字符串是否有中心对称的关系,例如xyzzyx是中心对称的字符串。(提示:将单链表中的一半字符先依次进栈,然后依次出栈与单链表中的另一半字符进行比较。) 判断字符中心对称代码如下: //判字符串是否中心对称 int symmetry(linklist*head,stack*s) { int n=length(head)/2; //n为单链表长度的一半 linklist*p=head->next; //p指向单链表的第一个节点 datatype x; for(int i=0;i{ push(s,p->data); p=p->next; } if(length(head)%2==1) p=p->next; //如果单链表长度为奇数,p指向下一个节点 while(p!=NULL) //判断是否对称 { x=pop(s); //堆栈元素出栈 if(x==p->data) p=p->next; //如果出栈元素等于p所指元素,p指向下一个节点 else return 0; //否则返回0 } return 1; //循环结束,返回1 } 其运行结果如下: 4.串采用顺序存储结构,编写朴素模式匹配算法,查找在串中是否存在给定的子串。 //顺序串的朴素模式匹配 int Index(seqstring*S, seqstring*T) { int i=1,j=1; //位序从1开始 while(i<=S->len&&j<=T->len) if(S->str[i-1]==T->str[j-1]) { i++; j++; } //继续比较后面的字符 else { i=i-j+2; j=1; } //本趟不匹配,设置下一趟匹配的起始位序 if(j>T->len) return(i-T->len); //匹配成功 else return(-1); //匹配不成功 } 5.若S是一个采用顺序结构存储的串,利用C的库函数strlen和strcpy(或strncpy)编写一算法void SteDelete(char*S,int I,int m),要求从S中删除从第i个字符开始的连续m个字符。若i≥strlen(S),则没有字符被删除;若i+m≥strlen(S),则将S中从位置i开始直至末尾的字符均删除。 //删除子串 void strDelete(seqstring*S,int i,int m) { char temp[maxsize]; if(i<=S->len) //如果i小于等于字符串长度 { strncpy(temp,S->str,i-1); //将字符串的前i个字符给temp strcpy(temp+i-1,S->str+i+m-1); //将字符串的第i+m位字符串后的字符接入temp strcpy(S->str,temp); //将temp的字符给S字符串 if(i<=S->len) //如果i小于等于字符串长度 if(i+m-1<=S->len) S->len=S->len-m; //i+m小于字符串长度,字符串删除m位 else S->len=S->len-i+1; //否则,字符串删除从第i位开始至结尾所有字符 } } 6.若在矩阵Am×n中存在一个元素A[i][j],其满足A[i][j]是第i行元素中最小值,且又是第j列元素中最大值,则称此元素为该矩阵的一个马鞍点。用二维数组存储矩阵Am×n ,设计算法求出矩阵中所有马鞍点。 //找马鞍点 void minmax(array*p) { int i,j,have=0; for(i=1;i<=m;i++) { p->min[i]=p->A[i][1]; //把第i行第一个元素给min的第i个元素 for(j=2;j<=n;j++) //寻找第i行中最小元素,把它给min的第i个元素 if(p->A[i][j]min[i]) p->min[i]=p->A[i][j]; } for (j=0;j

{ p->max[j]=p->A[1][j]; //把第j列第一个元素给max的第j个元素 for(i=2;i<=m;i++) //寻找第j列中最小元素,把它给max的第j个元素 if(p->A[i][j]>p->max[j]) p->max[j]=p->A[i][j]; } for(i=1;i<=m;i++) //判断第i行元素中最小值是否等于第j列元素中最大值,进而判断是否有马鞍点 for(j=1;j<=n;j++) if(p->min[i]==p->max[j]) { printf("%d,%d,%d\n",i,j,p->A[i][j]); have=1; } if(!have) printf("矩阵中没有马鞍点!\n"); } 7.A和B是两个n×n阶的对称矩阵,以行为主序输入对称矩阵的下三角元素,压缩存储存入一维数组A和B,编写一个算法计算对称矩阵A和B的乘积,结果存入二维数组C。 //对称矩阵相乘 void mult(array*p) { int i,j,k,t1,t2; datatype s; for(i=0;ifor(j=0;j{ s=0; for(k=0;k{ if(i>=k)t1=i*(i+1)/2+k; //压缩存储三角矩阵 else t1=k*(k+1)/2+i; if(k>=j)t2=k*(k+1)/2+j; else t2=j*(j+1)/2+k; s=s+p->A[t1]*p->B[t2]; //求解两矩阵相乘后对应元素 } p->C[i][j]=s; //将求解出的元素依次赋给矩阵C } } 8.采用希尔排序方法对顺序表中的证型数据进行排序,设计希尔排序算法并显示每趟排序的结果。( //希尔排序 void shellsort(rectype r[],int d[]) { int i,j,k,h; rectype temp; int maxint=32767; for(i=0;ir[i].key=-maxint;//设置T个监视哨 k=0; do{ h=d[k];//取一趟的增量 for(i=h+D1;i{ temp=r[i]; j=i-h; while(temp.key{ r[j+h]=r[j]; j=j-h; } r[j+h]=temp; }//组内直接插入法排序 print(r,N);//输出一趟的排序结果 k++; }while(h!=1); }

相关文档
最新文档