自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【上机考试 第二题 继承派生多态】

常见的大学生有四种(“undergraduate”本科生,“master”硕士生,“doctoral”博士生和”other”其他),重写UpdateStu(char*,int)和Show()函数,修改大学生的户籍所在地和大学生属性,并按要求输出大学生信息,格式为姓名 年龄 大学生属性 籍贯,如TomWang 23 master Tianjin。其中姓名和籍贯为字符串(长度不超过256,无空格),年龄和成绩为整数,大学生属性为数字0(表示本科生),1(表示硕士生),2(表示博士生)或3(表示其他)。

2023-06-11 14:57:21 121

原创 【上级考试 第三题 模板类】

4、特殊情况下,可用typeid(T).name()方法获取类型名称,如通过typeid(T).name()==typeid(int).name()判断是否为int型。2、测试数据中的分数类型,包括int、double和char类型(其中char类型的分数为’A’,’B’,’C’这样的大写评分,最终输出的平均分也应为char类型)。共六行,每两行为一种类型的测试数据,第一行为测试数据分数的个数,第二行为测试数据的分数列表。针对输入的测试数据,按类型顺序,分别输出其排序后的分数列表和最终平均分。

2023-06-10 21:24:42 104

原创 练习十二 抽象类和纯虚函数

定义两个派生类的对象,其中Circle类中的getArea()和getPerimeter()两个函数分别用来计算圆的面积和周长,Rectangle类中的getArea()和getPerimeter()两个函数分别用来计算矩形的面积和周长。最后再在Circle类里面重载减号运算符,重新定义一个Circle类的对象,计算这个对象与刚刚Circle类对象圆形作为同心圆时候,组成圆环的面积。第一行首先输入圆的半径,然后第二个圆的半径,接下来输入矩形的长和宽。第一行输出第一个圆的面积和周长。第三行输出圆环的面积。

2023-06-08 10:48:13 263

原创 练习十三 链表类模板

设计一个链表类模板,链表中每一个数据元素表示学生的基本信息,包括学号(int)、姓名(不超过10个字符)。采用链表存储结构,并按照学号从小到大排序,对链表进行如下操作:1.不断读入新的学生信息(姓名,学号)2.将新的学生信息节点插入到链表中的合适位置,使得链表节点按照学号由小到大升序排列。3.键入“print”后按链表顺序输出所有学生姓名。输入包含若干行,每一行为学生姓名和学号,空格分隔。需编写链表类模板和节点类模板,不可使用STL。按照链表顺序输出学生姓名,每个姓名一行。

2023-06-08 10:44:45 150 1

原创 【冒泡排序】--两种简单实现的比较

【代码】【冒泡排序】--两种简单实现的比较。

2023-06-06 11:29:34 40

原创 练习十 STL基本操作

某种聊天工具,每个好友的id都是唯一的,当用户接收到信息后,如果会话窗口之前没有与该好友的聊天信息,则在通信列表里,会将新接收的消息的好友id置顶,如果会话窗口中已有与该好友的聊天信息,则将该好友的id移动到通讯列表的顶端。请根据要求实现该功能。输入:第一行为整数N,代表有N组测试数据,接下来的N组测试中,第一行为整数T,代表有T条通讯,第二行有T个整数,按时间先后顺序表示接收到讯息的好友id。输出:按照通讯列表从上到下的顺序输出好友id,每个id以空格分隔。

2023-06-04 10:23:40 124

原创 练习九 类模板和元素排序

每组数据首先输入数组的长度n,由整型表示,之后顺序输入数组的元素。共输入三组数据,分别为整型、字符、字符串类型。设计一个类模板,实现任意类型数组的排序(升序),至少包括整型、字符、字符串类型。不需要实现循环输入;不需要考虑n和数组实际输入的元素个数不同的情况。输出三组数据升序排序之后的结果。

2023-06-04 10:21:53 131

原创 练习八 函数模板

其中,函数模板Print将数组p的前n个元素显示在屏幕上;函数模板Gtlever将p数组前n个元素中大于lever的各个元素, 依次移动到该数组的最前部,而后通过调用Print将p中大于lever的各元素显示在屏幕上。输入一共有两行,第一行为输入数组类型 (只需考虑int, float, char),数组长度,n的取值;第二行为数组每一位的取值,lever的取值。编制如下两个函数模板,用于完成所指定的功能;输出有一行,数组前n个元素中大于lever的项(保持原有的顺序)

2023-06-04 10:21:52 118

原创 练习七 多态

设计一个Distance基类,其中包括两个点的二维坐标,以及一个用来计算两点之间距离的纯虚函数。设计两个派生自Distance的类ManhattanDistance和EuclideanDistance,分别计算两点之间的曼哈顿距离和欧几里得距离。曼哈顿距离的公式为dis=|x1-x2|+|y1-y2|;欧几里得距离极为常见的两点间距离公式。输入4个int类型的数字,范围[0, 40000],分别为第一个点的x、y坐标和第二个点的x、y坐标。输出两个点之间的曼哈顿距离和欧几里得距离的平方。

2023-06-04 10:17:53 115

原创 练习六 类的继承

设计一个具有编辑功能的字符串类EditableString,它继承自String类,支持在指定位置插入、删除、替换字符的功能。设计一个简单的字符串类String,包含输入字符串、返回字符串内容及长度等功能;假设程序中默认自带一个字符串,内容为"1234567890",位置计数从1开始;输出单条指令执行后的新字符串。

2023-06-04 10:16:15 138

原创 练习五 运算符重载

设计一个Rational类,进行带分数的运算。要求:(1)包含两个整数成员变量表示分子和分母。(2)包含一个对所声明对象初始化的构造函数。不提供参数时,构造函数应提供默认值。分数存放成简化形式,例如分数“2/4”应在对象中存放成分子1和分母2的形式。输入为两行,每行代表一个分数,每行有两个int类型的数字,分别代表分数的分子和分母输出:按照步骤(3)操作后的分数值,分子和分母用“/”分隔,每个操作一行。

2023-06-04 10:16:09 105

原创 【模拟上机——继承和多态】

可以是字符串类型char[]或者数值类型0,1,2,3分别作为“ASCII”,“UNICODE”,“UTF8”和“ANSI”的标记。第二行首先输入整数n(0

2023-06-02 11:28:18 109

原创 练习三 链表

用类编写程序,实现单向链表结构。为每个输入的素数创建新节点,并按照从小到大的顺序插入到链表中的适当位置,当输入非素数时,停止创建新节点并将链表内的数据从首至尾遍历输出。请注意,输出内容严格单增,即输出的元素不能重复。输入:任意n个整数,彼此间用空格分隔,整数范围[0,10000],n

2023-06-02 10:32:05 143

原创 练习四 学生成绩

建立一个对象数组,内放4个学生的数据(学号 int、成绩 int),设立一个函数max(),用指向对象的指针作函数参数,在max函数中找出4个学生中成绩最高者,并输出其学号和成绩。如有相同最高成绩,输出所有符合的学号和成绩,顺序按照学号从小到大排列。输入8个整数:学号1 成绩1 学号2 成绩2…最高成绩和对应的学号。

2023-06-02 10:32:00 89

原创 练习二 字符串压缩

通过键盘输入一串小写字母(a到z)组成的字符串。请编写一个字符串压缩程序(函数实现),将字符串中连续出席的重复字母(不超过9个)进行压缩,并输出压缩后的字符串。压缩规则:1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc"。2、压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。

2023-06-02 10:30:40 171

原创 练习一 矩阵运算

矩阵是线性代数学科里常用的概念。矩阵C=A+B的加法规则,A矩阵对应的行列位置和B矩阵对应的行列位置数字相加,得到C矩阵对应行列位置的数字。通过编写程序,实现简单的矩阵加法运算。要求:要用二重指针动态分配内存的方式控制矩阵,实现分配和释放。输入:第一行输入矩阵A和B的行数, 第二行输入矩阵A和B的列数, 第三行输入矩阵A, 第四行输入矩阵B输出:按照行列输出一个矩阵C,同行数据之间有空格,行尾无空格。

2023-06-02 10:29:00 105

原创 运算符重载上机练习

设计一个Rational类,进行带分数的运算。要求:(1)包含两个整数成员变量表示分子和分母。(2)包含一个对所声明对象初始化的构造函数。不提供参数时,构造函数应提供默认值。分数存放成简化形式,例如分数“2/4”应在对象中存放成分子1和分母2的形式。输入为两行,每行代表一个分数,每行有两个int类型的数字,分别代表分数的分子和分母输出:按照步骤(3)操作后的分数值,分子和分母用“/”分隔,每个操作一行。

2023-05-27 10:36:25 141 1

原创 运算符重载(流提取和插入运算符)

一个很简单的关于运算符重载的小的样例。

2023-05-21 15:19:42 55 1

原创 【模拟上机——模板类】

要求重载输入和输出运算符,实现对数组内数据的输入和输出,并设计成员函数sort(),当数组内数据是int,double型时,按照从小到大的顺序对数组数据进行排序并输出结果;设计一个学生类(Student),包括私有数据成员:学号(int型),姓名,成绩(int型),函数成员根据需要定义。第一行一个整数N(N>0),代表按照int,double,char,Student(学号,姓名,成绩)类型的顺序,每种类型分别有N个测试数据。注意:必须用类模板实现,且实现输入/输出运算符的重载,禁用STL,否则计0分。

2023-05-17 20:08:05 215 1

原创 【模拟上机题目——链表】

运用类结构的相关知识,构造链表类,完成奇偶链表合并:给定一个单链表,将所有的奇数节点和偶数节点分别排在一起(注意:这里的奇数节点和偶数节点指的是编号的奇偶性,而不是节点的值的奇偶性),并输出合并后的结果链表。奇数链表在前,偶数链表在后,输出合并之后的结果链表。结果链表中每相邻元素之间使用空格隔开,最后一个节点后没有空格,每输出一个结果链表后换行。第一行一个整数N,代表有N组测试数据,接下来的N行每行第一个数为链表节点个数M,接下来为M个节点。

2023-05-17 19:47:48 435 1

原创 插入排序--快速排序算法

【代码】插入排序--快速排序算法。

2023-05-02 16:27:09 122 1

原创 单链表的创建--增删改查基本操作

【代码】单链表的创建--增删改查基本操作。

2023-03-16 10:54:12 90

原创 C语言学习记录

C语言个人学习记录

2023-01-20 09:17:29 108

原创 链表的创建:头插法和尾插法

数据结构中链表的创建:头插法和尾插法。

2023-01-19 16:33:46 1066 2

空空如也

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

TA关注的人

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