自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 软件工程作业7

描述的是模块内部各元素之间的关联度,或者说模块内的功能是否紧密相关。高内聚意味着模块内部的元素共同完成单一明确的任务,低内聚则表示模块内包含多种不相关或松散关联的功能。低耦合意味着模块之间的联系少,改动一个模块对其他模块的影响小。模块化是一种软件设计思想,它将复杂的系统划分为多个相互独立且可互换的组成部分,即模块。每个模块负责完成特定的功能,而这些模块可以单独设计、测试和维护,最后组合起来形成完整的系统。是指在软件设计中,将模块的内部实现细节对外部隐藏起来,只暴露必要的接口(函数、类等)供外部调用。

2024-05-29 05:45:00 257

原创 软件工程作业8

我使用过C语言、Java。总的来说,C语言更适合那些对性能和底层控制有严格要求的应用场景,而Java则在跨平台应用、大型企业级应用、Web服务和安卓移动应用开发等领域展现了显著的优势。选择哪种语言取决于具体项目的需求、性能要求、开发团队的技能以及对可维护性和未来扩展性的考量。

2024-05-29 05:45:00 1889 1

原创 数据结构:队列

QNode;int size;}Queue;队列作为一种常见的数据结构,在计算机科学中有广泛的应用,通常运用于广度优先搜索、任务调度等场景。希望这篇文章可以帮助到你更好的学习和理解队列的知识。

2024-05-28 13:15:23 826

原创 软件工程作业6

开发一个针对中小学生的数学学习软件时,进行有效的用户调研至关重要,这能确保产品贴合目标用户的需求和学习习惯。:直接用户群体,他们的反馈能直接反映产品的实用性和吸引力。:他们能从教育理论和儿童心理发展的角度提供专业意见,确保软件设计既符合教育规律,又能激发学生的学习兴趣和动力。:数学老师了解教学大纲要求,熟悉学生的学习难点和教学方法,他们的专业见解有助于软件内容的准确性和教育性。:调研已经使用类似数学学习软件的用户,可以了解到市场上的优缺点,为自己的产品定位和差异化设计提供依据。

2024-05-28 13:00:00 285

原创 软件工程作业5

某培训机构入学管理系统有报名、交费和就读等多项功能,下面是对其各项功能的说明:1、报名:由报名处负责,需要在学员登记表上进行报名登记,需要查询课程表让学员选报课程,学院所报课程将记录到学员选课表2、交费:由收费处负责,需要根据学员所报课程的收费标准进行收费,然后在账目表上记账,并打印收款收据给办理交费的学员。3、就读:由培训处负责,其在验证学员收款收据后,根据学员所报课程将学员安排到合适班级就读。画出入学管理系统的顶层图和1层图。

2024-05-27 17:30:00 483

原创 数据结构:栈

结构的定义其实就是顺序表。int top;}ST;

2024-05-27 16:44:32 602

原创 数据结构:带头双向循环链表

带头双向循环链表的结构最复杂,一般用在单独存储数据。但是实际中使用的链表数据结构,都是带头双向循环链表。另外这个结构虽然结构复杂,但是使用代码实现以后会发现结构会带来很多优势,实现反而简单了。现在我们看看如何实现。双向循环链表每个节点有两个指针,一个指向前一个,一个指向下一个。}LTNode;

2024-05-25 12:53:50 539

原创 单链表oj

练习。

2024-05-23 19:47:49 529

原创 软件工程作业4

Scrum中的"3355"是一种便于记忆的总结方式,用于概述Scrum框架的关键组成部分。这个概念涵盖了Scrum的核心角色、工件、事件(或仪式),以及价值观。下面是"3355"各个部分的具体内容:三个核心角色 (3 Roles)1. 产品负责人 (Product Owner):负责管理产品待办事项列表 (Product Backlog),确定产品的优先级,确保团队工作能最大化产品价值。

2024-05-19 11:05:49 764

原创 顺序表oj

oj链接图解: 2.删除有序数组中的重复项oj链接 图解: oj链接 从后往前挪动元素

2024-05-18 12:41:17 389

原创 数据结构:单链表

我们在学习了顺序表之后,会产生一些问题和思考:1.顺序表从中间/头部的插入删除,需要挪动数据,时间复杂度为O(N)。2. 增容需要申请新空间,拷贝数据,释放旧空间。会有不小的消耗。3. 增容一般是呈2倍的增长,势必会有一定的空间浪费。例如当前容量为100,满了以后增容到 200,我们再继续插入了5个数据,后面没有数据插入了,那么就浪费了95个数据空间。所以如何解决以上问题呢?下面给出了链表的结构来看看。}SListNode;

2024-05-12 13:23:52 760 1

原创 数据结构:顺序表

顺序表是用一段的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。

2024-05-08 19:20:40 278

原创 时间复杂度和空间复杂度

算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源。因此衡量一个算法的好坏,一般 是从时间和空间两个维度来衡量的,即时间复杂度和空间复杂度。时间复杂度主要衡量一个算法的运行快慢,而空间复杂度主要衡量一个算法运行所需要的额外空间。

2024-05-07 19:05:39 509

原创 C语言:程序环境和预处理

语法: #define name stuff#define定义的标识符会在编译器预处理阶段,将程序中的name替换为stuff。实际上define就是对于文本内容的替换。看几个例子:;) //用更形象的符号来替换一种死循环的实现#define 机制包括了一个规定,允许把参数替换到文本中,这种实现通常称为宏(macro)或定义 宏(define macro)。宏的声明方式:举个例子:这样使用宏,其实就是在预处理阶段把MAX(19,47)直接替换为上面的(x)>(y)?(x):(y)

2024-05-05 22:21:56 1138

原创 C语言:文件操作

磁盘上的文件是文件。(从文件功能的角度来分类的)。

2024-05-01 12:04:50 97

原创 C语言:动态内存管理

我们已经掌握了一些开辟内存的方式,例如在栈空间开辟空间存储不同类型的数据。//在栈空间上开辟四个字节//在栈空间上开辟10个字节的连续空间类似这样的开辟方式,内存的大小是固定好的,数组在申明的时候,必须指定数组的长度,它所需要的内存在编译时分配。有些时候我们需要的空间大小在程序运行的时候才能知道,这样的话,那数组的编译时开辟空间的方式就不能满足了。所以需要动态开辟。

2024-04-28 11:49:50 695

原创 软件工程作业3

在设计阶段采用模块化、低耦合、高内聚的原则,提高软件的结构质量和可维护性;综上所述,软件工程方法论对我们的软件开发工作具有重大用处,它为软件开发提供了科学的理论指导和实践框架,有助于我们构建高质量、高效率、可维护、可扩展的软件产品,适应快速变化的市场需求,实现商业成功。5. 支持规模化开发:对于大型、复杂、长期的软件项目,或者涉及多团队、多地点、多技术栈的分布式开发环境,软件工程方法论提供了有效的组织结构、沟通机制、配置管理、版本控制等工具和策略,使得大规模的软件开发活动得以有序、高效地进行。

2024-04-26 10:32:13 321

原创 C语言:自定义类型详解

还是上面的学生类型的例子:针对已有的结构体类型进行初始化其实很简单,只需要注意项s1、s2这种是全局变量,s3则是局部变量。还有结构体里嵌套其他结构体的变量初始化其实也是大同小异的,这里就不演示了。位段的声明和结构体类似,不同的是位段的类型基本是int ,char,signed int。而且成员名后面有冒号和数字。比如:A就是一个位段类型。那么它的大小是多少呢?先看答案:一个int是32位,第一个int满足存放a,b,c ,剩下的位数无法满足位段d,所以会有第二个int存放d,所以是8字节。

2024-04-25 19:25:13 681

原创 软件工程课程作业2

综上所述,软件工程并非旨在教会完全没有或仅具备极少编程能力的人开发软件,而是为已经具备一定编程基础的专业人士提供一套严谨、高效的工程化方法论,帮助他们更好地组织、协作和管理软件开发过程,以实现高质量、可维护的软件产品的目标。1. 软件工程的核心定位:软件工程是一门系统化的学科,它关注的是如何运用工程化方法、原则和实践来组织、规划、控制和改进软件开发过程,以确保所构建的软件产品满足预定的质量、性能、成本和时间要求。没有基本的编程技能,即使了解软件工程的理论和流程,也无法将其付诸实践,真正参与到软件开发之中。

2024-04-22 18:31:59 378

原创 C语言:字符函数和字符串函数

学习处理字符和字符串的库函数的使用和注意事项1.字符串函数。

2024-04-21 17:21:57 998

原创 C语言:指针(进阶)

前言了解了指针的基础知识,进阶一下~~~

2024-04-18 14:37:06 332

原创 java基础案例:String和ArrayList的简单案例

1.常用API:String案例。2.ArrayList案例。

2024-04-18 00:30:15 108

原创 快速阅读《软件工程技术与应用》产生的问题与思考

结构化方法侧重于对问题的逻辑流程进行分析和建模,而面向对象方法则倾向于从现实世界的实体及其行为出发,模拟现实世界的组成和交互。3. 程序设计原则的共通性:尽管实现方式不同,但两者都遵循诸如高内聚、低耦合等通用的程序设计原则,旨在提高代码的健壮性、灵活性和可扩展性。缺乏对现实世界的直接映射:对于复杂系统,特别是那些具有丰富实体和交互的系统,结构化方法可能难以直观地表达其内在结构和行为。过度设计风险:如果不恰当地使用面向对象特性,可能导致设计过于复杂,增加不必要的抽象层级,反而影响代码的简洁性和可维护性。

2024-04-17 15:18:16 272

原创 C语言:指针(初阶)

指针理解的2个要点:1.指针是内存中一个最小单元的编号,也就是地址2.平时口语中说的指针,通常指的是指针变量,是用来存放内存地址的变量总结:指针就是地址,口语中说的指针通常指的是指针变量。指针变量:我们可以通过(取地址操作符)取出变量的内存其实地址,把地址可以存放到一个变量中,这个变量就是指针变量所以我们可以得知指针变量是用来存放地址的变量。(存放在指针中的值都被当成地址处理)。同时。

2024-04-13 13:57:27 247

原创 C语言基础案例:简版三子棋

在学习了C语言一些比较基础的语法,通过案例来练习,对于巩固知识来说很有帮助。

2024-04-07 20:59:13 345

原创 java基础案例:抢红包、模拟双色球

【代码】java基础案例:抢红包。

2024-04-06 22:26:17 138

原创 C语言:数组

数组是一组相同类型元素的集合。

2024-04-02 22:03:38 494

原创 java基础案例:评委打分、加密

【代码】java基础案例:评委打分、加密。

2024-04-02 19:28:26 152

原创 java基础案例:买飞机票、验证码

【代码】java基础案例:买飞机票、验证码。

2024-04-01 22:10:35 121

原创 C语言:函数

程序调用自身的编程技巧称为递归(recursion递归做为一种算法在程序设计语言中广泛应用。一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的主要思考方式在于:把大事化小了解了函数基数基本知识。

2024-03-30 21:27:41 519

原创 C语言:循环语句

我们在日常生活中或是在程序所处理的问题中常常遇到需要重复处理的问题。在程序中,这就需要用到循环语句来帮助我们解决问题。C语言中循环语句有while语句、for语句和do while语句。相关语句详解如下。代码实例演示: 例如打印数字1-10while语句通过对于括号内表达式真假的判断来确定是否进行循环。只要循环条件为真,就执行循环体语句。先看一个例子 :使用这段代码产生一个结果,再把其中的break换成continue,再运行一次。结果如下:break和continue的结果:

2024-03-22 22:44:59 990

原创 C语言:分支语句

分支语句也叫做选择结构,常见的语句有if语句、switch语句。在生活中我们处处面对选择,程序亦是如此。相关语句详解心得如下。

2024-03-19 14:20:26 702 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除