软件设计课程设计报告
软件工程课程设计报告

湖南农业大学东方科技学院课程设计学部:理工班级:08级计算机3班姓名:肖帅学号:200841903309课程设计题目:T0305能力验证样品软件V1.1测试----总结系统测试报告课程名称:软件工程评阅成绩:评阅意见:成绩评定教师签名:日期:年月日目录1.测试需求 (3)2.测试报告 (4)3.测试计划 (8)3.1测试目的 (9)3.2项目背景 (9)3.3测试范围 (9)3.4参考的文档/标准 (9)3.5测试需提交的文档 (9)4.测试策略 (10)5.测试进度 (10)6.测试环境 (11)7.人员与任务安排表 (11)8.缺陷报告 (12)9.结束语 (18)1.T0305能力验证样品测试需求编号:2010-12-S003受湖南农业大学东方科技学院08级计算机3班第三小组委托,肖帅对中国航天工程咨询中心软件测评实验室提交的T0305M能力验证样品系统V1.1 按照GB/T17544-1998《信息技术软件包质量要求和测试》、《GB/T 16260-2006 软件工程、产品质量》标准和《T0305能力验证样品软件需求规格说明书》在软件的功能性(适合性、准确性)、用户文档等方面进行测试。
系统概述净化室是一个封闭的无污染空间,为了保证净化室的洁净,净化室通过一个隔离室与外界进行隔离。
净化室使用人员进入净化室前需要先进入隔离室,并在隔离室呈封闭状态的情况下在隔离室中进行一定时间的“清洗”净化处理,此净化持续时间是系统根据需要设定的一个时间量。
净化室使用人员在离开净化室时,首先需要通过里门进入隔离室,关闭里门后,才能打开外门,离开隔离室。
总之,隔离室要求里门或外门总有一个是关闭的,以保证净化室与外界总处于隔离状态。
本样品是一个净化室进/出控制的模拟系统1、功能性(适合性、准确性)该软件各项功能运行正常,能够较准确的完成系统时间设置(系统时间设置、超时报警时间设置、清洗时间设置)、状态显示、净化室进入控制、净化室离开控制、报警处理(超时报警、恐慌报警)、系统复位等功能。
软件设计模式课程设计

软件设计模式课程设计一、课程目标知识目标:1. 理解软件设计模式的基本概念、分类和作用;2. 掌握常见设计模式的特点、应用场景和使用方法;3. 了解设计模式在软件工程中的应用,提高软件系统的可维护性和可扩展性。
技能目标:1. 能够运用所学设计模式解决实际软件开发中的问题;2. 培养阅读和分析设计模式相关文献的能力,提升自主学习能力;3. 提高团队协作能力,通过小组讨论和实践,共同完成设计模式的案例分析。
情感态度价值观目标:1. 培养对软件设计模式的学习兴趣,激发学生主动探索精神;2. 树立正确的软件工程观念,重视软件质量、可维护性和可扩展性;3. 培养良好的编程习惯,遵循设计模式原则,提高代码质量。
课程性质:本课程为高年级专业核心课程,旨在帮助学生掌握软件设计模式的基本知识和应用技巧,提高软件工程实践能力。
学生特点:学生具备一定的编程基础和软件工程知识,具有较强的逻辑思维能力和学习主动性。
教学要求:结合实际案例,注重理论与实践相结合,通过讲解、讨论、实践等多种教学手段,使学生能够掌握设计模式的核心内容,并能在实际项目中灵活运用。
同时,注重培养学生的团队协作能力和自主学习能力,提高课程的学习效果。
二、教学内容1. 软件设计模式概述- 设计模式的概念与作用- 设计模式的分类与特点2. 创建型设计模式- 单例模式- 工厂方法模式- 抽象工厂模式- 建造者模式- 原型模式3. 结构型设计模式- 适配器模式- 桥接模式- 装饰器模式- 组合模式- 外观模式- 享元模式- 代理模式4. 行为型设计模式- 职责链模式- 命令模式- 解释器模式- 迭代器模式- 中介者模式- 备忘录模式- 观察者模式- 状态模式- 策略模式- 模板方法模式- 访问者模式5. 设计模式案例分析与实践- 结合实际案例,分析设计模式在项目中的应用- 小组讨论与实践,动手实现设计模式教学内容安排与进度:1. 第1周:软件设计模式概述2. 第2-3周:创建型设计模式3. 第4-5周:结构型设计模式4. 第6-7周:行为型设计模式5. 第8周:设计模式案例分析与实践教学内容与教材关联性:本教学内容根据教材章节进行编排,涵盖设计模式的基本概念、分类、应用场景和实际案例,确保学生能够系统地学习和掌握设计模式相关知识。
软件工程课程设计_银行储蓄系统

银行储蓄系统系统设计报告目录一、引言 (3)1.编写目的 (3)2.项目背景 (3)3.开发人员 (3)4.参考文献 (3)二、问题定义 (4)1.目标 (4)2.系统功能 (4)三、可行性研究分析 (4)四、需求分析 (5)1. 功能需求分析 (5)2. 建立功能模型和数据需求 (5)3. 建立逻辑模型 (13)4. 建立行为模型 (14)5. 性能需求分析 (14)6. 系统可用性和可靠性需求分析 (14)五、概要设计报告 (15)1 数据库概要设计 (15)2 系统总体设计 (16)3 测试计划 (17)4 接口设计 (17)5 运行设计 (18)6 出错处理设计 (18)7 安全保密设计 (18)8 维护设计 (18)六、详细设计报告 (19)1 用户界面设计 (19)2 测试用例及预测结果 (25)七、运行环境和编译环境说明书 (27)1 开发编译环境 (27)2 运行使用环境 (27)3 错误处理 (27)八、总结报告 (28)1一、引言1、编写目的为了规范化软件开发,提高开发过程的能见度,便于控制和管理软件开发过程,提高软件质量,降低开发风险,减少需求变更,便于日后的维护工作,文档定制了软件开发的细节问题,明确软件需求,便于与用户协调开发,确认需求。
对软件的开发相关文档及用户使用手册进行了整理。
2、项目背景非电子化的银行储蓄系统工作效率较低,且安全性,准确性得不到保证。
越来越满足不了用户的需求和银行自身发展的需要。
建立一个高效,准确,方便,安全的银行储蓄系统是用户需求和技术进步的共同推动。
3、开发人员组长:xxx组员:xx xxx xxx xxx xxxxx作为项目经理,在人员沟通,质量管理,进度管理,风险管理方面进行了着重管理,并对里程碑进行了评审,确认。
并对变更进行评审,控制,记录。
需求分析以及系统编码由xxx完成。
用户界面设计以及系统测试由xxx完成。
数据库设计工作由xx完成。
软件工程导论课程设计[定稿]好
![软件工程导论课程设计[定稿]好](https://img.taocdn.com/s3/m/4058857b42323968011ca300a6c30c225901f0a9.png)
添加标题 添加标题 添加标题 添加标题
定义:软件需求规格说明书是软件工程导论课程设计的重要任务之一, 用于描述软件的功能、性能、接口等方面的要求。
目的:确保开发人员对软件需求有充分理解,避免开发过程中的误解和 返工。
内容:ቤተ መጻሕፍቲ ባይዱ括软件的功能需求、非功能需求、接口需求等,需清晰、准确、 完整地表达用户需求。
编写要求:编写软件需求规格说明书需要遵循一定的规范和标准,如采 用统一的术语和格式,确保文档易于阅读和维护。
制定软件设计计划
确定软件系统的 目标和功能
分析用户需求和 业务流程
设计软件系统的 架构和模块
制定软件系统的 测试计划和验收 标准
完成软件设计并编写设计文档
完成软件系统的需求分析、设 计、编码、测试和部署
通过软件工程导论课程设计,学生 可以学习到实际软件开发中所需的 技能和工具,为未来的职业发展打 下坚实的基础。
软件工程导论课程设计的任务 和要求
设计一个简单的软件系统
任务:分析用户需求,设计 软件架构,编写代码并测试
要求:符合软件工程规范, 能够实现基本功能,具备良 好的用户体验和可维护性
编写软件需求规格说明书
优秀作品评选与表彰
评选标准:功 能完整性、技 术难度、创新 性、用户体验
评选过程:学 生提交作品、 教师评审、现
场答辩
表彰方式:颁 发证书、奖金、 展示优秀作品
激励作用:激 发学生的学习 积极性、促进 团队协作和交
流
THANK YOU
汇报人:
系统测试与优化
系统测试的目的: 发现并修复软件中 的缺陷和错误
测试类型:单元测 试、集成测试、系 统测试和验收测试
测试方法:黑盒测 试、白盒测试和灰 盒测试
软件工程课程设计-1-可行性研究报告-新生入学管理系统

新生入学管理系统可行性研究报告拟制人审核人批准人[XX年XX月XX日]目录1 引言 (1)1.1编写的目的 (1)1.2背景 (1)1.3定义 (2)1.4参考资料 (2)2 可行性研究的前提 (2)2.1 要求 (2)2.2 目标 (2)2.3 条件、假定和限制 (3)2.4 进行可行性研究的方法 (3)2.5 评价尺度 (3)3 对现有系统的分析 (3)3.1 处理流程和数据流程 (3)3.2 工作负荷 (4)3.3 费用开支 (4)3.4 工作人员 (4)3.5 设备 (5)3.6 局限性 (5)4 所建议的系统 (5)4.1 对所建议系统的说明 (5)4.2 处理流程和数据流程 (6)4.3 改进之处 (6)4.4 影响 (7)4.5 技术条件方面的可能性 (8)5 可选择的其他系统方案 (9)5.1 可选择的系统方案1 (9)5.2 可选择的系统方案2 (9)6 投资及效益分析 (10)6.1 支出 (10)6.2 收益 (10)6.3收益/投资比 (11)6.4 投资回收周期 (11)6.5 敏感性分析 (12)7 社会因素方面的可能性 (12)7.1法律方面的可行性 (12)7.2 使用方面的可能性 (12)结论 (13)1 引言1.1编写的目的新学期伊始,各学校迎新生活动如火如荼的展开着。
随着时代的发展,信息化的进步。
学校现有的新生接待工作显得较为繁琐和混乱,如何能更合理的安排好学校的迎新工作,已经成为一个学校是否能跟的上时代和信息进步的体现。
本软件就是在这种背景下开发的。
新生入学管理是一个以3G网络或无线网络为平台建立一个用电脑软件来实现流程一体并可视化的新生接待系统,减少了原有的新生接待流程人力资源浪费的现象,并且去除了不必要的餐饮开销;此外,该软件利用网络之间的信息同步共享,随时随地的查阅新生的各项信息,比起现有的操作系统更具实时性,准确性;而且,新生入学管理系统对于新生信息的安全性比起传统的接待流程更为突出。
bs软件开发课程设计

b s软件开发课程设计一、课程目标知识目标:1. 让学生掌握B/S架构的基本原理,理解其相对于C/S架构的优势;2. 使学生了解Web前端和后端的基本技术,如HTML、CSS、JavaScript和服务器端编程语言;3. 让学生掌握数据库的基本操作,如数据查询、插入、删除和修改。
技能目标:1. 培养学生运用所学知识,独立完成一个简单的B/S软件项目的能力;2. 提高学生的团队协作能力,学会在项目中分工合作,共同解决问题;3. 培养学生运用网络资源进行自主学习,掌握软件开发的最新技术和方法。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣,培养其探究精神和创新意识;2. 使学生认识到软件技术在现代社会中的重要性,增强其社会责任感;3. 培养学生遵守道德规范,关注用户需求,以提高软件产品的用户体验。
课程性质:本课程为实践性较强的课程,旨在通过项目驱动的教学方式,使学生掌握B/S软件开发的基本技能。
学生特点:学生已具备一定的计算机编程基础,对新技术充满好奇,喜欢动手实践。
教学要求:结合学生特点,注重理论与实践相结合,以项目为载体,培养学生实际操作能力和团队协作精神。
通过分解课程目标为具体的学习成果,使学生在课程结束后能够独立完成一个简单的B/S软件项目。
二、教学内容1. B/S架构原理:介绍B/S架构的概念、特点及其与C/S架构的对比,帮助学生理解Web应用的工作原理。
教材章节:第一章 B/S架构概述2. Web前端技术:讲解HTML、CSS、JavaScript等基本前端技术,使学生能够构建静态网页。
教材章节:第二章 Web前端技术3. 服务器端编程:学习常用的服务器端编程语言(如Python、Java、PHP 等),了解其基本语法和功能。
教材章节:第三章 服务器端编程4. 数据库技术:介绍数据库的基本概念,学习MySQL等数据库的使用,包括数据表设计、数据操作等。
教材章节:第四章 数据库技术5. 综合项目实践:将所学知识应用于实际项目中,以小组为单位完成一个B/S 软件项目的开发。
人事管理系统(工资管理子系统)软件工程课程设计报告

课程设计报告学生姓名:学号:学院:经济管理学院班级:题目: 人事管理系统工资管理子系统指导教师:职称:20 年月日1.选题背景 (3)2.工资管理子系统需求分析 (3)2.1工资管理子系统需求陈述 (3)2.2需求分析 (4)2.2.1功能需求 (4)2.2.2性能需求 (4)2.3系统需求建模 (5)2.3.1确定参与者 (6)2.3.2确定用例 (6)2.3.3系统用例建模 (6)2.3.4用例描述 (7)3.工资管理系统系统分析 (8)3.1系统用例建模 (9)3.2静态结构模型 (16)3.2.1类的识别 (16)3.2.2类的关联分析 (17)3.3.3类的属性描述 (18)3.3.4类的构建 (19)3.3系统动态模型 (19)3.3.1系统执行顺序分析 (19)3.3.2系统协作分析 (21)3.3.3系统状态分析 (22)3.3.4系统活动分析 (22)4.工资管理系统系统设计与实现 (24)4.1UML体系结构设计 (24)4.1.1硬件体系结构设计 (24)4.1.2软件体系结构设计 (25)4.2对象模型设计 (25)4.3系统实现 (25)4.3.1组件分析 (26)4.3.2配置分析 (28)5.课程设计心得体会 (28)参考文献 (29)1.选题背景随着社会的进步和计算机技术的发展,特别是微型计算机的大范围普及,现在应用在大中型企业的信息管理系统中,几乎都包括了工资管理模块。
有些环境中是有大型ERP软件中的一个模块引进的,有些作为企业的财务系统的一部分。
计算机处理的数据量不断增加。
文件管理系统采用的一次最多存取一个记录的访问方式,以及在不同文件之间缺乏相互联系的结构,越来越不能适应管理大量数据的需要,于是数据库管理系统便应运而生。
有了数据库我们便能方便快捷的对数据进行读取、存取,并维护数据库的数据。
但,西方管理制度设计的工资管理软件,在很多时候还不能完成解决中国特色中小企业的问题,本文介绍的毕业设计的研究工作就是要为这些具有中国特色的中小企业解决他们在工资管理方面的问题。
cae软件课程设计

cae软件课程设计一、课程目标知识目标:1. 学生能理解CAE软件的基本概念、功能及应用领域;2. 学生掌握CAE软件的操作流程,包括前处理、求解和后处理;3. 学生了解CAE软件在工程领域中的实际应用案例,理解其在产品设计优化中的作用。
技能目标:1. 学生能独立进行CAE软件的安装、启动和基本操作;2. 学生具备运用CAE软件进行简单零件的建模、网格划分、材料属性赋予及边界条件设置的能力;3. 学生能运用CAE软件进行仿真分析,并对结果进行正确解读和评价。
情感态度价值观目标:1. 学生对CAE技术产生兴趣,认识到其在现代工程技术中的重要性;2. 学生通过学习CAE软件,培养严谨的科学态度和良好的团队协作精神;3. 学生在课程学习中,树立创新意识,学会将CAE技术应用于实际工程问题的解决。
课程性质:本课程为实践性较强的学科,结合理论知识,培养学生运用CAE软件解决实际工程问题的能力。
学生特点:学生具备一定的计算机操作基础,对工程软件有一定了解,但可能对CAE软件的具体应用和操作流程较为陌生。
教学要求:教师需结合学生特点,采用案例教学、任务驱动等方法,引导学生掌握CAE软件的操作和应用,注重培养学生的实际操作能力和团队协作能力。
通过课程学习,使学生能够将所学知识应用于实际工程问题的解决。
二、教学内容本课程教学内容主要包括以下几部分:1. CAE软件概述:介绍CAE软件的定义、发展历程、主要功能及应用领域,使学生对该软件有全面的认识。
教材章节:第一章 绪论内容列举:CAE软件定义、发展历程、功能及应用领域。
2. CAE软件操作流程:讲解CAE软件的前处理、求解和后处理等操作流程,使学生掌握软件的基本操作。
教材章节:第二章 CAE软件操作流程内容列举:前处理、求解、后处理操作流程及其注意事项。
3. 建模与网格划分:学习CAE软件中建模和网格划分的方法,培养学生实际操作能力。
教材章节:第三章 建模与网格划分内容列举:建模方法、网格划分策略及质量检查。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 目 录 1. 前言………………………………………………………………………..3 2. 对项目任务的理解与分析…………………………………………….….3 2.1 BMP文件格式简介…………………………………………………...3 2.2 BMP图像信息的获取………………………………………………...6 3. 基本思路 ……………………………………………………………6 3.1本项目要完成的主要内容…………………………..……………….7 3.2 主要算法函数说明 ………………………..………………………7 3.3 模块划分………………………………………………………………8 4. 个人计划安排………………………………………………………………9 5. 参考资料…………………………………………………………………10 1
一.前言 之所以选这个题目,是因为看到老师演示已经编写好了的图像显示程序,感觉具有很炫的视觉效果,出于好奇,想要知道那些图片效果到底是怎么实现的,于是便选择了这一项目。但现实终归是现实,我对此一点头绪都没有,有太多的不懂,几乎是一头雾水,需要了解一些基本问题。如BMP的文件格式,获取图像的基本信息的方法,以及C语言中一些库函数(fseek、 fclose等)。随后,便开始了我的探讨之旅,查资料,并有了些简单的了解。同时也制定了学习计划。
二. 对项目任务的理解与分析 2.1 BMP文件格式简介 BMP(Bitmap-File)图形文件是Windows采用的图形文件格式,在Windows环境下运行的所有图象处理软件都支持BMP图象文件格式。Windows系统内部各图像绘制操作都是以BMP为基础的。Windows 3.0以前的BMP图文件格式与显示设备有关,因此把这种BMP图象文件格式称为设备相关位图DDB(device-dependent bitmap)文件格式。Windows 3.0以后的BMP图象文件与显示设备无关,因此把这种BMP图象文件格式称为设备无关位图DIB(device-independent bitmap)格式(注:Windows 3.0以后,在系统中仍然存在DDB位图,象BitBlt()这种函数就是基于DDB位图的,只不过如果你想将图像以BMP格式保存到磁盘文件中时,微软极力推荐你以DIB格式保存),目的是为了让Windows能够在任何类型的显示设备上显示所存储的图象。BMP位图文件默认的文件扩展名是BMP或者bmp(有时它也会以.DIB或.RLE作扩展名)。Bmp文件是非常常用的位图文件,无论是游戏还是其他都被广泛使用。
一般BMP文件可以看成由4个部分组成:BMP文件头(bitmap-file header)、BMP信息头(bitmap-information header)、彩色表(调色板)(color table)和定义BMP位图数据。
1:位图头文件数据结构,它包含BMP图像文件的类型、显示内容等信息; 2:位图信息数据结构,它包含有BMP图像的宽、高、压缩方法,以及定义颜色等信息; 2
3:调色板,这个部分是可选的,有些位图需要调色板,有些位图,比如真彩色图(24位的BMP)就不需要调色板;
4:位图数据,这部分的内容根据BMP位图使用的位数不同而不同,在24位图中直接使用RGB,而其他的小于24位的使用调色板中颜色索引值。 2.1.1 BMP文件头 位图文件头(bmp file header):提供文件的类型、大小、存放位置等信息 。其结构定义如下:
typedef struct tagBITMAPFILEHEADER { WORD bfType; // 位图文件的类型,必须为BM(0-1字节) DWORD bfSize; // 位图文件的大小,以字节为单位(2-5字节) WORD bfReserved1; // 位图文件保留字,必须为0(6-7字节) WORD bfReserved2; // 位图文件保留字,必须为0(8-9字节) DWORD bfOffBits; // 位图数据的起始位置,以相对于位图(10-13字节) // 文件头的偏移量表示,以字节为单位 } BITMAPFILEHEADER; 2.1.2 BMP信息头 位图信息头(bitmap information):提供图像数据的尺寸、位平面数、压缩方式、颜色索引等信息。
2.1.3颜色表(调色板) (optional) 调色板(color palette):可选,如使用索引来表示图像,调色板就是索引与其对应映射表,标识颜色索引号与其代表的颜色的对应关系。它在文件中的布局就像一个二维数palette[N][4],其中N表示总的颜色索引数,每行的四个元素分别表示该索引对应的B、G、R和Alpha的值,每个分量占一个字节。如不设透 明通道时,Alpha为0。索 3
引号就是所在行的行号,对应的颜色就是所在行的四个元素。单色、4位色、8位色、16位色需要调色板,24位色、32位色不需要调色板。
2.1.4定义BMP位图数据 位图数据(bitmap data):就是图像数据,该域的大小取决于压缩方法及图像的尺寸和图像的位深度,它包含所有的位图数据字节,这些数据可能是彩色调色板的索引号,也可能是实际的RGB值,这将根据图像信息头中的位深度值来决定。由于位图信息头中的图像高度是正数,所以位图数据在文件中的排列顺序是从左下角到右上角,以行为主序排列的。也即我们见到的第一个像素是图像最左下角的数据,第二个像素为图像最后一行第二列的数据,…一直到最后一行的最后一列数据,后面紧接的是倒数第二行的第一列的数据,依此类推。
如果图像是24位或是32位数据的位图的话,位图数据区就不是索引而是实际的像素值了。下面说明一下,此时位图数据区的每个像素的RGB颜色阵列排布:24位RGB按照BGR的顺序来存储每个像素的各颜色通道的值,一个像素的所有颜色分量值都存完后才存下一个下一个像素,不进行交织存储。32位数据按照BGRA的顺序存储,其余与24位位图的方式一样。像素的排布规则与前述一致。
对齐规则:Windows默认的扫描的最小单位是4字节,如果数据对 齐满足这个值的话对于数据的获取速度等都是有很大的增益的。因此,BMP图像顺应了这个要求,要求每行的数据的长度必须是4的倍数,如果不够需要进行比特 填充(以0填充),这样可以达到按行的快速存取。这时,位图数据区的大小就未必是 图片宽×每像素字节数×图片高 能表示的了,因为每行可能还需要进行比特填充。
2.2 BMP图像信息的获取 1)fopen打开BMP文件。 2)fread读取文件的数据,读取的前14个字节是文件头,接着的40字节是信息头,然后是调色板和位图。
3)fclose关闭文件。 4
三.方案设计 3.1本项目要完成的主要内容 本次所选定的课程设计的题目有如下几个进行选择: 利用C语言实现BMP格式图象文件的分析和显示。主要内容包括: ①完成BMP格式图像的显示,要求在提供的画布上循环的显示某一文件夹下面所有的BMP文件(支持所有BMP格式); ②实现图像的特效显示(淡入淡出,百页窗等等)。
3.2 主要算法函数说明 3.2.1 BMP图像信息的获取 1)fopen打开BMP文件。 2)fread读取文件的数据,读取的前14个字节是文件头,接着的40字节是信息头,然后是调色板和位图。 3)fclose关闭文件。 3.2.2 主要库函数fopen、 fread、 fseek、fclose简介 3. 2.2。1` fopen函数 函数功能: 打开一个文件 函数原型:FILE * fopen(const char * path,const char * mode); 所需库: 返回值: 文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno 中。一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以一般在fopen()后作错误判断及处理。 参数说明: 参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流的形态。 5
mode有下列几种形态字符串: r 以只读方式打开文件,该文件必须存在。 r+ 以可读写方式打开文件,该文件必须存在。 rb+ 读写打开一个二进制文件,只允许读写数据。 rt+ 读写打开一个文本文件,允许读和写。 w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。 w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。 a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留) a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留) wb 只写打开或新建一个二进制文件;只允许写数据。 wb+ 读写打开或建立一个二进制文件,允许读和写。 wt+ 读写打开或着建立一个文本文件;允许读写。 at+ 读写打开一个文本文件,允许读或在文本末追加数据。 ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。 上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。 3.2.2 fread函数 函数功能: 从一个流中读数据 函数用法: int fread(void *ptr, int size, int nitems, FILE *stream); 所需库: 返回值:成功读取的元素个数 参 数:用于接收数据的地址(ptr) 单个元素的大小(size) 元素个数(nitems) 提供数据的文件指针(stream) 3.2.3 fseek函数