- 博客(214)
- 资源 (27)
- 收藏
- 关注
原创 C++实验9 多态:虚函数
实验九 多态:虚函数1 实验目的(1)学习为什么要使用虚函数;(2)学习如何声明函数为虚函数;(3)学习如何声明异类数组(基类指针分别指向不同的派生类对象);(4)学习如何使用虚函数和异类数组实现多态调用。2 实验内容2.1 模拟银行帐户管理程序(1)问题描述创建一个银行账户的继承层次,表示银行的所有客户账户。所有的客户都能在他们的银行账户存钱,取钱,并且账户还可以分成更具体的...
2020-07-31 08:22:32 2483 1
原创 编译原理实验六:用Yacc设计语法分析器2
完整源代码下载地址:点击下载实验目的:学习如何使用Lex和Yacc设计一个语法分析器,并学习如何在语法分析的同时生成分析树。实验内容:修改实验5,给产生式加上动作,动作为生成一棵语法分析树。这棵分析树的结构可以使用或参照例子parser1中ast.h文件中定义的分析树结构。实验要求:输入为实验2所给语言写的源程序文件;输出为一棵语法分析树,这棵语法分析树的表示方法可以是这样两种:1.将分析树的数据结构打印出来;2.按分析树的结构输出一个C语言源程序文件(即输入是所给语言的源程序文件,输出为语义相
2020-07-04 21:46:29 5286
原创 编译原理实验五:用Yacc设计语法分析器1
实验目的:学习如何使用Yacc设计一个语法分析器,并与用lex写的词法分析器链接起来。实验内容:使用yacc为实验2所给的语言写一个语法分析器(你可以重新设计该语言的文法,但不能改变语言)。其中,词法分析使用实验3中已完成的词法分析器(即,你需要将本实验的语法分析器和实验3的词法分析器链接起来)。实验要求:输入为实验2所给语言写的源程序文件;输出为屏幕显示语法分析是否成功。在语法分析中不能出现任何的冲突(移进-归约或归约-归约冲突),或者虽然有冲突,但是你能够说清楚冲突是如何解决的。在cygw
2020-07-01 09:00:53 10697
原创 VirtualBox安装Centos7.5超详细教程
Centos7.5操作系统大家可以自己从网上找,我这里也提供一个百度云链接。链接:https://pan.baidu.com/s/1qT2BumqlKgebzx7WZrBm8g提取码:mhfv打开VirtualBox,点击新建输入虚拟机名称和存储位置,类型选择Linux,版本选择Red Hat (64-bit),设置完毕后点击下一步。3.根据自己的需要设置内存大小。4.选中“现在创建虚拟硬盘”,点击创建5.保持默认VDI,点击下一步6.自己阅读说明,决定是动态分配还是固
2020-06-05 17:15:59 1143
原创 编译原理实验四:验证Yacc的使用
实验目的:熟悉语法分析器生成工具Yacc的使用,并学会在cygwin下使用bison工具编译Yacc文法说明文件。学习如何使用lex和yacc合作进行语法分析。实验内容:根据给出的calculator例子(calculator0,calculator1,calculator2,calculator3)完成下面题目:用lex和yacc写一个计算布尔表达式真值的计算器。实验要求:输入为一个布尔表达式,以换行结束。输出为这个布尔表达式的真值(true或false)。尝试二义文法和非二义文法两种不同的实
2020-06-03 14:38:33 4444 2
原创 编译原理实验e4:从语言SUM到栈式计算机STACK的机器语言的翻译
实验目的:熟悉语言SUM 到栈式计算机STACK的机器语言的翻译过程,理解编译的一般步骤。实验内容:sum.c是用c语言写的从sum语言到栈式计算机STACK的机器语言的编译器(省略了词法语法分析部分)。该程序的基本功能是先构造SUM语言的某句子的抽象语法树,然后将该语法树翻译成STACK的机器语言程序,并按顺序打印出该机器语言程序的指令。程序中有两段内容不完整(在程序中用TODO表示),请读懂并编译通过该程序,再将TODO的部分补充完整,并编译通过。实验要求:读懂程序sum.c并编译通过。(该
2020-06-01 14:16:01 2240
原创 C#应用程序连接本地SQL Server数据库实例
有关SQL Server的安装和简单的使用,可以查看我的这篇博文:点此查看一、为数据库添加数据1.打开MSSM,并连接到本地数据库,之后点击新建查询,如下图所示:2.输入如下SQL语句,点击执行。Use Master;GOCREATE Database MyDatabase;GOUse MyDatabase;GOCREATE TABLE student(学号 char(8) PRIMARY KEY,姓名 varchar(8) NOT NULL,性别 char(2) CHE
2020-05-27 11:27:16 6606 2
原创 CSP刷题笔记
将字符串转换为整数的函数atoi(string,nullptr,base)十进制十六进制之间的转换sprintf(),详细说明见链接:sprintf
2020-05-20 10:03:22 663 1
原创 常用STL容器总结
一、vector vector容器内的元素可以通过下标访问,也可以通过迭代器访问。vector迭代器的定义方式是vector<typename>::iterator it,通过*it就可以访问vector里面的元素了。vector的迭代器允许直接加上一个整数,比如it + 3这种形式,除了string容器外,其余的常用STL容器都不支持这种写法。3 begin()函数取容器的首...
2020-05-16 15:32:42 726
原创 编译原理实验三:用lex设计词法分析器2
实验目的:学会用lex设计一个词法分析器,并考虑其与后续语法分析器的链接问题。实验内容:修改上次实验2的词法分析器,使其满足下列要求。实验要求:要求每次调用词法分析函数yylex时,只返回一个记号(token);为记号选择适当的属性值,并且每次词法分析函数返回记号前,都将记号的属性值存入全局变量yylval中。(yylval可以自己定义为全局变量);记号属性值的选择:标识符的属性为标识符的名字字符串(例如,标识符name1的属性为字符串”name1”),整数的属性为整数值,浮点数的属性为浮点
2020-05-13 08:00:06 4238
原创 编译原理实验二:用Lex设计词法分析器1
实验目的:学会用lex设计一个词法分析器。实验内容:使用lex为下述文法语言写一个词法分析器。语言文法:<程序> --> PROGRAM <标识符> ; <分程序><分程序> --> <变量说明> BEGIN <语句表> END.<变量说明> --> VAR <变量说明表>;<变量说明表> --> <变量表>: <类型> | <变量
2020-05-12 09:34:23 9887 1
原创 编译原理实验e1:熟悉cygwin环境的使用,学习使用lex写简单的词法分析程序,会在cygwin环境下使用flex调试lex写的程序
实验目的:熟悉cygwin环境的使用,学习使用lex写简单的词法分析程序,会在cygwin环境下使用flex调试lex写的程序。实验内容:在实验1所改写的程序的基础上增加识别string记号。string是字符串,如果”出现在字符串中,则必须转义,写成\”形式;如果\出现在字符串中,也必须转义,写成\形式。实验要求:在cygwin下用flex和gcc工具将实验调试通过,并写出测试例测试正...
2020-05-04 11:38:11 3093
原创 编译原理实验一: Cygwin环境的熟悉和lex的使用
实验一实验目的:熟悉cygwin环境的使用,学习使用lex写简单的词法分析程序,会在cygwin环境下使用flex调试lex写的程序。实验内容:读懂exam1.l和exam2.l两个例子,使用cygwin下的flex工具将exam1.l和exam2.l编译并调试通过。并且修改exam2.l,在其基础上增加如下记号:左右大小括号:{ } ( )将关系算符改写成C中的形式分号、赋值号:...
2020-05-02 14:49:52 4503
原创 PAT 1004 Counting Leaves
题目描述A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.Input Specification:Each input file contains one test case. Each case sta...
2020-04-30 09:15:02 284
原创 PAT 1002 A+B for Polynomials
题目描述题目大意 现在,当A和B都是两个多项式时,你需要去计算A+B的结果。输入说明 每一个输入文件包含一个测试用例,每个测试用例占2行,每一行包含一个多项式的信息: K是多项式中非0项的数目,Ni和aNi(i= 1,2,3,…K)是指数和系数。所有输入数据有1≤K≤10,0≤NK <⋯<N2 <N1 ≤1000。输出说明 每一个测试用例...
2020-04-28 20:02:50 343
原创 PAT 1122 Hamiltonian Cycle
题目描述The “Hamilton cycle problem” is to find a simple cycle that contains every vertex in a graph. Such a cycle is called a “Hamiltonian cycle”.In this problem, you are supposed to tell if a given cy...
2020-04-24 21:23:51 285
原创 CSP 201812-4 数据中心
题目传送门题目分析 这道题本质上是求最小生成树。 通过题目的描述,我们可以知道,要输出的结果其实是一棵树的所有边中,权值最大的那条边的权值,本题中的权值就是时间。题目输入的是一个无向图,因此它可以通过删除边来构造出很多棵不同的树,每一棵树都对应于一个最大边权值,我们的任务是从所有的树中,找出最大边权值最小的边权是多少。可以证明,最小生成树的最大边权是所有树中最小的。 点的个数最大可...
2020-04-24 12:11:33 284
原创 PAT 1107 Social Clusters
题目描述Sample Input83: 2 7 101: 42: 5 31: 41: 31: 44: 6 8 1 51: 4Sample Output34 3 1
2020-04-23 09:58:07 247
原创 CSP 201912-4 区块链
题目传送门题目分析 用邻接表vector<vector<int> > adjList(505)来存储整个网络的结构,所有节点的主链存储在vector<vector<int> >backbone(505)中。如下结构体用来存储哪个节点在什么时候向它的相邻节点发送了主链。struct SendedChain { int node; ...
2020-04-21 09:54:39 608 1
原创 PAT 1003 Emergency
题目描述 As an emergency rescue team leader of a city, you are given a special map of your country. The map shows several scattered cities connected by some roads. Amount of rescue teams in each city an...
2020-04-18 11:22:21 243
原创 PAT 1013 Battle Over Cities
并查集#include <bits/stdc++.h>using namespace std;int n, m, k;vector<int> adj[1005];int father[1005];int FindFather(int a) { int temp = a; while (a != father[a]) a = fat...
2020-04-16 15:20:44 260
原创 PAT 1098 Insertion or Heap Sort
题目描述According to Wikipedia:Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insertion sort removes one element from the input d...
2020-04-15 10:58:04 225
原创 PAT 1030 Travel Plan
题目描述 A traveler’s map gives the distances between cities along the highways, together with the cost of each highway. Now you are supposed to write a program to help a traveler to decide the shortest...
2020-04-13 19:25:11 236
原创 C++实验8 多态:运算符的重载
实验八 多态:运算符的重载1 实验目的学习面向对象程序设计中“多态机制”的一种实现方法——运算符重载,包括: (1)学习如何定义运算符的重载;(2)学习如何使用重载的运算符。2 实验内容2.1 改进《实验三 面向对象初步》中的日期类在《实验三 面向对象初步》中,设计了日期类 Date。本次实验将 daysTo函数重载为减号运算符,使得 t1 - t2 的值为从日期 t2 到日期 t1...
2020-04-12 11:44:14 2902 5
原创 C++实验7 继承与派生
实验七 继承与派生1 实验目的学习继承与派生的相关理论,熟悉不同继承方式下对基类成员的访问方式,包括以下几个方面:(1)学习声明和使用类的继承关系,声明派生类;(2)熟悉不同继承方式下,对基类成员的访问控制;2 实验内容2.1 停车场程序(1)问题描述请根据题目要求完成简单的停车场管理程序。1.停车场(Park)有 N 个停车位(space),每个停车位可以停放不同类型的汽车(...
2020-04-11 11:19:10 3219 2
原创 C++实验6 对象数组
实验六 对象数组1 实验目的(1)学习如何使用数组名作为函数的参数,通过传数组的方式,在被调用函数中访问主调函数中的多个对象的方法。(2)学习如何在类中内嵌对象数组成员变量。(3)学习对象数组的初始化。 2 实验内容2.1 根据题目要求编写模拟的程序(1)五一小假期,许多人选择外出旅游。每位乘客(Passenger)最多可以携带 3 件行李(Luggage)。并且乘客可以选择个人自...
2020-04-10 07:57:16 3528 1
原创 C++中使用ios::sync_with_stdio(false)可能引发的问题
C++的输入输出操作cin和cout使用起来比scanf和printf要方便,因为它在输入和输出时不用指明数据类型,系统会自动判断。但是cin和cout也有它的缺点,就是输入输出较scanf和printf而言要慢,因此很多人写代码时会加上句ios::syn_with_stdio(false)来提高cin和cout的效率,原先一直听人说这样写可能会引发问题,但却不知道具体是什么问题,今天终于遇到...
2020-04-09 18:11:30 1806
原创 PAT 1043 Is It a Binary Search Tree
题目描述Sample Input 178 6 5 7 10 8 11Sample Output 1YES5 7 6 8 11 10 8Sample Input 278 10 11 8 6 7 5Sample Output 2YES11 8 10 7 5 6 8Sample Input 378 6 8 5 10 9 11Sample Output 3NO...
2020-04-07 17:03:09 304
原创 使用STL的sort函数发生invalid comparator异常解决方案
在使用STL的sort()函数进行排序时,使用了自己写的cmp函数,结果运行时报invalid comparator异常,所用到的cmp函数如下。bool cmp(int a, int b) { return a >= b;}上面的函数,当传入的参数a和b相等时,函数的返回值是true,这在C++标准中是不被允许的。C++标准规定cmp函数是弱序的,这个概念与数据结构上的稳定...
2020-04-05 21:00:09 2503 1
原创 PAT 1102 Invert a Binary Tree
问题描述Sample Input81 -- -0 -2 7- -- -5 -4 6Sample Output3 7 2 6 4 0 5 16 5 7 4 3 2 0 1题目大意 下面的信息摘自Max Howell的推特。 谷歌:我们90%的工程师使用你写的软件,但是你不能在白板上翻转一棵二叉树。 现在轮到你来证明你可以翻转二叉树了。输入说明 每...
2020-04-05 17:29:58 250
原创 PAT 1029 Median
题目描述Given an increasing sequence S of N integers, the median is the number at the middle position. For example, the median of S1 = { 11, 12, 13, 14 } is 12, and the median of S2 = { 9, 10, 15, 16, 17...
2020-04-02 08:43:54 266
原创 操作系统算法总结
作业调度算法:先来先服务调度算法(first-come first-served,FCFS)短作业优先调度算法(short job first,SJF)优先级调度算法(priority-scheduleing algorithm,PSA)高响应比优先调度算法(Highest Response Ratio Next,HRRN)进程调度算法:轮转调度算法优先级调度算法多队列调度算...
2020-04-01 21:21:57 743
原创 PAT 1010 Radix
题目描述Given a pair of positive integers, for example, 6 and 110, can this equation 6 = 110 be true? The answer is “yes”, if 6 is a decimal number and 110 is a binary number.Now for any pair of positiv...
2020-03-30 10:08:55 185
原创 PAT 1007 Maximum Subsequence Sum
Sample Input10-10 1 2 3 4 -5 -23 3 7 -21Sample Output10 1 4题目大意 给定一个由K个整数组成的序列{N1,N2,…,Nk}。一个连续的子序列被定义为{Ni,Ni+1,…,Nj},且满足0 <= i <=j <= k。最大子序列是它的所有元素和最大的连续的子序列。例如给定一个序列{-2,11,-4,13...
2020-03-29 10:50:36 139
原创 CSP201312-4 有趣的数
题目传送门题目分析 最终需要找出的是长度为n的有趣的数,我们可以先从长度为1的数开始考虑,然后再逐步添加数字,使其长度为n。当添加了若干个数字,其长度变为m(m<=n)时,这m个数就是长度为n的数的高m位。 对于长度为m(m<=n,后面不再特别说明)的数M,它里面可能只含有1种数,可能含有两种数,可能含有三种数,也可能含有四种数,即0,1,2,3都含有。下面对不同的情况分别...
2020-03-28 17:10:14 254 1
原创 SQL Server超详细使用教程——从安装到编写SQL语句
到微软官网下载SQL Server Developer版本,现在的最新版本是SQL Server 2019 Developer。微软官网传送门:点击此处直达下载完成之后,在文件夹中找到刚才下载的文件,双击打开,打开之后的界面如下图所示。我们选择自定义安装,之后再选择要安装的位置,再点击安装,如下图所示点了安装之后会出现如下图所示的界面,我们需要等待它下载安装包,此过程等待的时间可能较长...
2020-03-27 10:22:07 236109 107
原创 C++实验5 结构体和指针
实验五 结构体和指针1 实验目的(1)学习如何使用结构体的指针作为函数的参数,通过传地址的方式,在被调用函数中修改主调函数中的多个结构体变量的方法。(2)学习如何把逻辑结构相同的部分抽象为函数,以提高代码的可重用性,达到提高程序的可维护性的目的。2 实验内容2.1 模拟画图功能(1)问题描述模拟计算机的画图功能,能够模拟画圆和长方形的功能。程序主要功能如下:① 提供一个如下的主...
2020-03-23 10:13:32 2030
原创 C++实验4 对象作为数据成员
实验四 对象作为数据成员1 实验目的学习对象作为类的数据成员的使用方法,学习对象数据成员的初始化以及“成员初始化器”的使用方法。2 实验内容2.1 使用 Date 类,定义 Employee 类(1)问题描述在《实验三 面向对象初步》中,设计了日期类 Date。本次实验将设计雇员类 Employee,并将日期类 Date 作为雇员类 Employee 的内嵌数据成员。日期类Date ...
2020-03-20 11:03:39 2530
原创 CSP201412-1 门禁系统
题目传送门题目分析 源代码题目问题描述 涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访情况。每位读者有一个编号,每条记录用读者的编号来表示。给出读者的来访记录,请问每一条记录中的读者是第几次出现。输入格式 输入的第一行包含一个整数n,表示涛涛的记录条数。 第二行包含n个整数,依次表示涛涛的记录中每位读者的编号。输出格式 输出一行,包含n个整数,由...
2020-03-19 15:58:17 475
中国海洋大学软件工程期末试卷.zip
2020-04-03
中国海洋大学2018操作系统A卷.rar
2020-04-03
C#窗体绘制动态曲线
2020-03-25
计算机网络期末考试试题及参考答案.rar
2020-01-21
C#自定义控件.rar
2019-10-26
Chrome插件.rar
2019-09-03
C#TabControl控件实现窗体的整合与切换示例
2019-08-28
C#串口编程之串口助手
2019-08-06
和风天气OUC.zip
2019-07-24
数据结构资料.zip
2019-07-24
C++课程设计——基于MFC的银行储蓄管理系统
2019-03-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人