- 博客(37)
- 收藏
- 关注
原创 BJFUOJ-C++程序设计-实验4-运算符重载
6.对+重载时逻辑为创造一个新对象,strcpy前一个字符串,再strcat加上后一个字符串。很经典全面的运算符重载实例,注意一下实现乘除法时需要将临时变量保存原始数值,然后再进行计算操作。1.首先注意到成员是个字符指针,要想到new与delete、浅拷贝与深拷贝相关知识。创建的是char* 而非string类对象(最后直接赋予String.s);首先为s申请足够的空间,再通过strcpy()实现字符串的深拷贝。这里主要关注前缀++/–与后缀++/–的写法及其区别。麻烦一点的简单运算符重载。
2024-05-02 21:41:35 1001
原创 BJFUOJ-C++程序设计-实验3-继承和虚函数
(2)基类中的虚函数可以在派生类中被重新定义,但重新定义时必须与基类中的函数原型完全相同(同名覆盖),且无论是否用virtual修饰,系统都将其视为虚函数(建议加上virtual)。 即:当用基类指针(或引用)指向派生类对象,并用该指针调用该函数时,系统会在程序运行中根据所指向对象的不同,自动选择执行当前指向对象所属类的成员函数,从而实现了运行时的多。(1)抽象类只能用作基类来派生出新类,不能声明抽象类的对象,但可以声明指向抽象类的指针。但基类对象只能“看到”其所替代的派生类对象中的基类部分。
2024-05-02 20:24:02 1019
原创 BJFUOJ-C++程序设计-实验2-类与对象
BJFUOJ经典易错闰年判断:(y % 4 = = 0 && y % 100!= 0) || (y % 400 == 0)·成员函数返回值为类时, return *this返回自身对象的使用。getDays函数的使用与实现;基本上算是对之前知识点的大杂烩。使用指针类型调用其成员。如add_day(0);
2024-05-02 19:30:56 624
原创 BJFUOJ-C++程序设计-实验1-类与对象
BJFUOJ 编写一个圆类Circle,实现半径的输入、面积的计算和输出。要求实现Circle类的3个成员函数,完成输入半径、计算面积和输出面积;并按照题目的输入和输出描述测试Circle类。
2024-05-02 19:01:40 894
原创 C语言基础期末综合练习-2
编程解决如下问题: 有一个数学等式: ABCD*E= DCBA,式中的一个字母代表位数字,试找出所有符合上述要求的乘积式并打印输出。注意:A、B、C、D、E不能为 0。(输入) 无。(输出) 若干行乘积式,一行一个乘积式。
2023-12-26 22:57:25 157
原创 [Error] ‘for‘ loop initial declarations are only allowed in C99 or C11 mode(DEV C++)
解决Dev-C++ [Error] ‘for‘ loop initial declarations are only allowed in C99 or C11 mode在 for 循环里声明变量只允许在 C99 或 C11 模式, 需要在工具(Tools)/ 编译选项(complier option)/代码生成下的语言标准选择C99。右键项目->编译器 -> 代码生成 -> 语言标准 -> ISO C99。项目->编译器 -> 代码生成 -> 语言标准 -> ISO C99。此时只是改变了全局设置!
2023-12-01 21:02:07 2591
原创 类的分文件编写(以C++为例)
类的分文件编写是一种常用的软件开发技术,特别适用于大型项目。本文将介绍如何以C++为例进行类的分文件编写,以提高代码的可维护性和可扩展性。在软件开发中,良好的代码组织和结构是至关重要的。当项目变得庞大复杂时,一个文件中堆积的代码会显得不够清晰和易于维护。这时,将代码按照功能和责任进行分文件编写是一个很好的选择。下面以C++为例,介绍类的分文件编写的方法。类的分文件编写是一种常用的软件开发技术,适用于提高代码的可维护性和可扩展性。
2023-11-27 19:50:38 728 1
原创 【BJFU】程序设计基础 实验2
(1)解决:在记录次数的数组中让要保存的那个数字作为本数组中元素的下标,这样就可以让一个数对应一个记录次数数组的一个元素。且由于下标不可为负数,通过num+100将范围[-100, 100]映射到[0, 200];(2)解决:用冒泡排序,但注意比较的是次数,交换的是数,而数的交换由于一个数对应一个记录次数数组的一个元素而不会影响到次数数组。(3)解决:用一个标记数组flag[],没输出前对于flag为0,输出后标记为1,并用if判断是否输出过。
2023-11-27 15:55:02 129
原创 SQL-事务(事务操作|事务四大特性|并发事务问题|事务隔离级别)
事务是一个操作的集合,他是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功要么同时失败。例:张三要向李四转账1000:默认MySQL的事务是自动提交的,即当执行一条DML语句,MySQL会立即隐式的提交事务。
2023-11-26 19:50:53 158
原创 SQL启动及DDL
注:【】内可省略·查询1.查询所有数据库2.查询当前数据库//注意括号,实际是个函数·创建CREATE DATABASE [ IF NOT EXISTS ] 数据库名 [ DEFAULT CHARSET 字符集] [COLLATE 排序规则 ];注意:UTF8字符集长度为3字节,有些符号占4字节,所以推荐用utf8mb4字符集·删除DROP DATABASE [ IF EXISTS ] 数据库名;·使用数据库USE 数据库名;
2023-11-26 14:05:54 65
原创 SQL-多表查询-子查询
概念:SQL语句中嵌套SELECT语句,称谓嵌套查询,又称子查询。例如:子查询外部的语句可以是 INSERT / UPDATE / DELETE / SELECT 的任何一个根据子查询结果不同,分为:标量子查询(子查询结果为单个值)列子查询(子查询结果为一列)行子查询(子查询结果为一行)表子查询(子查询结果为多行多列)根据子查询位置,分为WHERE 之后FROM 之后SELECT 之后。
2023-11-25 20:12:21 242
原创 SQL-多表查询-联合查询 union, union all
当我们需要跨多个表检索一个查询结果集时,SQL中的联合查询就十分有用了。在本文中,我们将研究什么是SQL联合查询,并提供使用场景和实例。总之,SQL联合查询(UNION/UNION ALL)十分有用。它可以帮助我们从多个表中获取数据,为我们提供丰富多彩的查询结果集,同时也能提高SQL的灵活性。
2023-11-17 19:11:53 5029
原创 SQL-多表查询-自连接
在 SQL 中,自连接(Self-Join)指的是在同一个表中进行 JOIN 操作。通过自连接,我们可以将表中的不同行之间进行关联,进行比较和分析等操作。本篇文章将详细讲解 SQL 的自连接,包括自连接的意义、用法、以及适用场景。自连接是 SQL 中强大且有用的技术,可以用于比较同一张表中的不同行、查找数据、计算和分析数据,以及处理层级结构等。通过合理利用自连接,可以实现更复杂和深入的查询和分析操作。在使用自连接时,
2023-11-17 18:55:03 2003
原创 SQL-多表查询-外连接(左外连接与右外连接)
在 SQL 中,连接(join)通常指的是将两个或多个表按照某些条件结合起来,生成一个更大的表。连接可以分为内连接、外连接和交叉连接。外连接又分为左外连接和右外连接,它们的区别在于连接的方向不同。本篇文章将详细讲解 SQL 的外连接,包括左外连接和右外连接,以及它们的应用场景。综上所述,外连接是很有用的 SQL 操作,通过它我们可以将两个表连接在一起,同时保留每个表中的所有数据。左外连接和右外连接可以适用于不同的场合,根据实际需要进行选择。
2023-11-17 18:30:48 6440
原创 SQL-多表查询-内连接
通过本篇博客,我们详细介绍了SQL内连接的概念、语法和应用场景。内连接通过比较两个或多个表的列值,返回满足连接条件的结果行。通过实例分析,我们展示了如何使用内连接查询订单和客户的信息。希望本篇博客对于理解和应用SQL内连接有所帮助。
2023-11-17 16:31:35 2240
原创 【洛谷刷题笔记】P1223 排队接水(贪心?)
有n个人在一个水龙头前排队接水,假如每个人接水的时间为Ti,请编程找出这n个人排队的一种顺序,使得n个人的平均等待时间最小。
2023-11-07 19:04:25 170 1
原创 【洛谷】P1044 [NOIP2003 普及组] 栈(巧妙递推)
栈是计算机中经典的数据结构,简单的说,栈就是限制在一端进行插入删除操作的线性表。栈有两种最重要的操作,即 pop(从栈顶弹出一个元素)和 push(将一个元素进栈)。栈的重要性不言自明,任何一门数据结构的课程都会介绍栈。宁宁同学在复习栈的基本概念时,想到了一个书上没有讲过的问题,而他自己无法给出答案,所以需要你的帮忙。
2023-11-05 19:12:11 130
原创 【BJFU】程序设计基础 实验1
实验内容:1.编写程序,实现如下功能:求之值。思考:注意分数之前的符号,什么时候为正什么时候为负?2. 编写程序,实现如下功能:求出 200 到 300 之间的数,且满足条件:它们三个数字之积为 42,三个数字之和为 12。思考:如何求出一个三位数的百位、十位和个位?
2023-11-05 13:49:19 168
原创 【洛谷】P1093 [NOIP2007 普及组] 奖学金
某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学 排在前面,这样,每个学生的排序是唯一确定的。任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前五名名学生的学号和总分。注意,在前5名同学中,每个人的奖学金都不相同,因此,你必须严格按上述规则排序。72795。
2023-11-02 18:35:47 298
原创 【BJFUOJ】小孙同学(贪心算法)
这段代码的主要思路是解决一个问题:给定一个位置 n,计算达到该位置的最小跳跃次数。代码的逻辑如下:首先,通过cin语句读取一个整数 t,表示测试用例的数量。接下来,使用一个 while 循环,重复执行下面的操作 t 次。在循环内部,通过cin语句读取一个整数 n,表示目标位置。然后,开始计算最小跳跃次数。如果 n 不等于 1 或 2,我们需要继续计算跳跃次数。首先,使用取模运算符计算 n 除以 3 的余数,并将结果保存在变量 t 中。
2023-11-02 13:19:10 278
原创 【洛谷刷题笔记】P5740 【深基7.例9】最厉害的学生(写sort的cmp)
现有N名同学参加了期末考试,并且获得了每名同学的信息:姓名(不超过8个字符的仅有英文小写字母的字符串)、语文、数学、英语成绩(均为不超过150的自然数)。总分最高的学生就是最厉害的,请输出最厉害的学生各项信息(姓名、各科成绩)。如果有多个总分相同的学生,输出靠前的那位。
2023-11-01 22:46:19 406 1
原创 【洛谷刷题笔记】P5731 【深基5.习6】蛇形方阵
给出一个不大于9的正整数n,输出n×n的蛇形方阵。从左上角填上1开始,顺时针方向依次填入数字,如同样例所示。注意每个数字有都会占用3个字符,前面使用空格补齐。
2023-10-31 20:11:10 239 1
原创 【洛谷刷题笔记】P1789 【Mc生存】插火把 题解
题目简单,但是在看题解是看到了一个令人我眼前一亮的防止数组越界的函数写法,后模仿着解了题,也是第一次用“增量数组”,特此记录学习:该函数如下
2023-10-29 21:17:05 429 1
原创 【洛谷刷题笔记】P5730 【深基5.例10】显示屏
液晶屏上,每个阿拉伯数字都是可以显示成3×5的点阵的(其中X表示亮点,表示暗点)。现在给出数字位数(不超过100)和一串数字,要求输出这些数字在显示屏上的效果。数字的显示方式如同样例输出,注意每个数字之间都有一列间隔。
2023-10-28 20:25:17 258 1
原创 【洛谷刷题笔记】[NOIP2015 提高组] 神奇的幻方
幻方是一种很神奇的N×N矩阵:它由数字123⋯⋯N×N构成,且每行、每列及两条对角线上的数字之和都相同。当N为奇数时,我们可以通过下方法构建一个幻方:首先将1写在第一行的中间。之后,按如下方式从小到大依次填写每个数KK23⋯N×NK−1KK−1K−1KK−1K−1KK−1K−1K−1KK−1KK−1现给定N,请按上述方法构造N×N的幻方。
2023-10-28 15:41:11 160 1
原创 【洛谷做题笔记】P5729 【深基5.例7】工艺品制作(数组初始化的问题)
首次初始化数组时用了int v[a][b][c]={0};而导致没有完全初始化为0,其中只有32个为0(至少在我的DEV C++5.14是这样)。于是用 ``` memset()``` 来初始化,注意其头文件 ```#include ```
2023-10-28 13:25:56 287 1
原创 【洛谷刷题笔记】P1217 [USACO1.5] 回文质数 Prime Palindromes 题解
因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以151是回文质数。写一个程序来找出范围ab5≤ab≤100000000(一亿)间的所有回文质数。
2023-10-24 10:51:06 737
原创 【洛谷刷题笔记】P1009 [NOIP1998 普及组] 阶乘之和 题解
用高精度计算出S1!2!3!⋯n!n≤50其中!表示阶乘,定义为n!例如,5!
2023-10-23 14:53:21 316
原创 【洛谷刷题笔记】P1055 [NOIP2008 普及组] ISBN 号码
每一本正式出版的图书都有一个 ISBN 号码与之对应,ISBN 码包括9位数字、1位识别码和3位分隔符,其规定格式如,其中符号就是分隔符(键盘上的减号),最后一位是识别码,例如就是一个标准的 ISBN 码。ISBN 码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔符后的五位数字代表该书在该出版社的编号;最后一位为识别码。识别码的计算方法如下:首位数字乘以1加上次位数字乘以2。
2023-10-18 20:15:28 220
原创 【洛谷刷题笔记】P5707 上学迟到
【洛谷】P5707上学迟到 学校和 yyy 的家之间的距离为s米,而 yyy 以v米每分钟的速度匀速走向学校。在上学的路上,yyy 还要额外花费10分钟的时间进行垃圾分类。学校要求必须在上午8:00到达,请计算在不迟到的前提下,yyy 最晚能什么时候出门。由于路途遥远,yyy 可能不得不提前一点出发,但是提前的时间不会超过一天。
2023-10-14 19:40:00 220 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人