自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 1001 A+B Format (20分)

#include <iostream>#include <iomanip>using namespace std;int main(){int a,b,c;cin>>a>>b;c=a+b;if(c<0){ c=-c; cout<<"-";}//进行三种情况的划分if(c>=1000000){ cout<<c/1000000<<","; c=c%10000.

2020-05-22 22:31:14 281

原创 6-2 抽象类Shape (15分)

请编写一个抽象类Shape,包括两个纯虚函数,分别为计算面积getArea()和计算周长getPerim()。通过Shape类派生出矩形类Rectangle和圆类Circle,并计算各自的面积和周长。测试用例具体要求:输入1表示测试矩形类,之后输入矩形长和宽。输入2表示测试圆类,之后输入圆半径。#include <iostream>using namespace std;const double PI=3.14;class Shape { public: virtual dou

2020-05-22 21:05:58 5624

原创 6-1 表彰优秀学生(多态)

学期结束,班主任决定表彰一批学生,已知该班学生数在6至50人之间,有三类学生:普通生,特招运动员,学科专长生,其中学科专长生不超过5人。主函数根据输入的信息,相应建立GroupA, GroupB, GroupC类对象。GroupA类是普通生,有2门课程的成绩(均为不超过100的非负整数);GroupB类是特招运动员,有2门课程的成绩(均为不超过100的非负整数),1次运动会的表现分,表现分有:A、B、C、D共4等。GroupC类是学科专长生,有5门课程的成绩(均为不超过100的非负整数)。表彰人员

2020-05-22 21:02:26 1848

原创 5——7-4 日程安排(多重继承+重载) (40分)

已有一个日期类Date,包括三个protected成员数据int year;int month;int day;另有一个时间类Time,包括三个protected成员数据int hour;int minute;int second;现需根据输入的日程的日期时间,安排前后顺序,为此以Date类和Time类为基类,建立一个日程类Schedule,包括以下新增成员:int ID;//日程的IDbool operator < (const Schedule & s2);//判断当前

2020-05-12 22:28:49 3226 2

原创 5——7-3 学生CPP成绩计算 (30分)

给出下面的人员基类框架:class Person {protected: string name; int age;public: Person(); Person (string p_name, int p_age); void display () {cout<<name<<“:”<<age<<endl;}};建立一个派生类student,增加以下成员数据:int ID;//学号

2020-05-12 12:57:57 1739

原创 5——7-2 动物世界 (15分)

1、实现Mammal类的方法2、由Mammal类派生出Dog类,在Dog类中增加itsColor成员(COLOR类型)3、Dog类中增加以下方法:constructors: Dog()、Dog(int age)、Dog(int age, int weight)、Dog(int age, COLOR color)、 Dog(int age, int weight, COLOR color)、~Dog()accessors: GetColor()、SetColor()Other methods: Wa

2020-05-12 12:11:03 2902

原创 5——7-1 定义基类Point和派生类Circle,求圆的周长. (10分)

定义基类Point(点)和派生类Circle(圆),求圆的周长。Point类有两个私有的数据成员float x,y;Circle类新增一个私有的数据成员半径float r和一个公有的求周长的函数getCircumference();主函数已经给出,请编写Point和Circle类。#include <iostream>#include<iomanip>using namespace std;//请编写你的代码int main(){ float x,y,r;

2020-05-12 10:37:07 4113

原创 5——6-5 多重继承派生类构造函数 (10分)

根据所给的基类Student和Teacher,定义Graduate类类定义:#include <iostream>#include <string>using namespace std;class Teacher {public: Teacher(string nam,int a,string t) {name=nam;

2020-05-11 23:44:09 1907 2

原创 5——6-4 狗的继承 (10分)

完成两个类,一个类Animal,表示动物类,有一个成员表示年龄。一个类Dog,继承自Animal,有一个新的数据成员表示颜色,合理设计这两个类,使得测试程序可以运行并得到正确的结果。函数接口定义:按照要求实现类裁判测试程序样例:/* 请在这里填写答案 */int main(){ Animal ani(5); cout<<"age of ani:"<<ani.getAge()<<endl; Dog dog(5,"black"); cout<<

2020-05-11 23:27:56 3646 1

原创 5——6-3 学生派生类 (10分)

根据所给的类Student定义其派生类,并利用构造函数进行数据初始化,使程序能按照"样例"的格式进行输出#include <iostream>#include<string>using namespace std;class Student {public: Student(int n,string nam,char s )

2020-05-11 22:56:42 6042

原创 5——6-2 派生类的定义和使用 (10分)

按要求完成下面的程序:1、定义一个Animal类,包含一个void类型的无参的speak方法,输出“animal language!”。2、定义一个Cat类,公有继承自Animal类,其成员包括:(1)私有string类型的成员m_strName;(2)带参数的构造函数,用指定形参对私有数据成员进行初始化;(3)公有的成员函数print_name,无形参,void类型,功能是输出成员m_strName的值,具体输出格式参见main函数和样例输出。类和函数接口定义:参见题目描述。裁判测试程序样

2020-05-11 22:34:59 4568

原创 5——6-1 写出派生类构造方法(C++) (5分)

裁判测试程序样例中展示的是一段定义基类People、派生类Student以及测试两个类的相关C++代码,其中缺失了部分代码,请补充完整,以保证测试程序正常运行。函数接口定义:提示:观察类的定义和main方法中的测试代码,补全缺失的代码。裁判测试程序样例:注意:真正的测试程序中使用的数据可能与样例测试程序中不同,但仅按照样例中的格式调用相关函数。#include <iostream>using namespace std;class People{private: str

2020-05-11 22:21:59 3556 1

原创 7-1 复数类的运算 (20分)

根据以下代码段完善 ?? 处内容及程序内容,以实现规定的输出。class Complex{ public: Complex(double r=0, double i=0):real(r), imag(i){ } Complex operator+( ?? ) const;//重载双目运算符'+' Complex operator-=( ?? ); //重载双目运算符'-=' friend Complex operator-( ?? ) const;//重载双目运算符'-' void

2020-05-11 19:01:00 7166 1

原创 6-5 时间相加 (30分)

设计一个时间类,用来保存时、分、秒等私有数据成员,通过重载操作符“+”实现2个时间的相加。要求: (1)小时的时间范围限制在大于等于0;(2)分的时间范围为059分;(3)秒的时间范围为059秒。#include <iostream>using namespace std;class Time {private: int hours,minutes, seconds;public: Time(int h=0, int m=0, int s=0); Time operator +

2020-05-11 17:32:30 2558

原创 6-4 使用成员函数重载复数类的运算符+

类Complex声明了一个复数类,有两个数据成员realPart(代表复数的实部)和imgPart(代表复数的虚部),并定义了成员函数实现了重载运算符“+”以实现两个复数对象的相加操作。成员函数Show用来输出复数的实部和虚部。请完成对运算符“+”的重载操作。函数接口定义:Complex& Complex::operator+(Complex& com);参数com为复数类Complex的对象的引用,函数的返回值为当前对象与com对象相加后的值。裁判测试程序样例:#include&

2020-05-11 17:07:51 3949 3

转载 6-3 大整数求和(运算符重载) (15分)

BigInt类表示不超过100位的无符号大整数。试重载>>,<<和+,以支持无符号大整数的输入、输出与求和(假设结果仍是一个不超过100位的无符号大整数)。重载面向BigInt类对象的运算符:/>><<+裁判测试程序样例:#include <iostream>#include <string>using namespace std;/* 请在这里填写答案 */int main(){ BigInt a, b

2020-05-11 16:47:30 4582

原创 6-2 时钟模拟 (30分)

一个Time类,数据成员有时、分、秒。要求模拟秒表,每次走一秒,满60秒进位,秒又从零开始计数。满60分进位,分又从零开始计数。输出时、分和秒的值。(使用重载++运算符实现)时间类定义:class MyTime测试程序样例:/* 请在这里填写答案 */int main(){ MyTime t1,t2(23,59,59),t3; cin>>t3; ++t1; cout<<t1<<endl; ++t2; cout<<t2<<en

2020-05-11 11:02:11 3781

原创 6-1 学生成绩的输入和输出(运算符重载) (10分)

现在需要输入一组学生的姓名和成绩,然后输出这些学生的姓名和等级。输入时,首先要输入学生数(正整数)N。接着输入N组学生成绩,每组成绩包括两项:第一项是学生姓名,第二项是学生的成绩(整数)。输出时,依次输出各个学生的序号(从1开始顺序编号),学生姓名,成绩等级(不小于60为PASS,否则为FAIL)函数接口定义:面向Student类对象的流插入和流提取运算符#include <iostream>#include <string>using namespace std;

2020-05-11 10:25:12 6904 1

原创 友元函数

友元就是提供了一种机制使得非类中的成员也能访问类中私有的函数我们可以这样来理解友元相当于我的好朋友,友元类相当于好朋友那一家。下面我们有好朋友的这个思路来理解一下以下几点如果类A声明为类B的友元类,那么类A的所有成员函数都自动成为类B的友元函数。A是B的朋友,那么A的一家人都是B的好朋友友元关系是单向传递的A是B的好朋友,但B并不一定是A的好朋友友元关系不具有传递性也就是说C是...

2020-05-06 21:27:10 151

原创 析构函数

析构函数和构造函数是一对,构造函数服务于一个对象的出生,析构函数服务于一个对象的死亡。为什么要用它:当我们的成员函数中出现指针的时候,说明我们接下来的main函数中会有new对象的操作出现(要不创建指针指向哪里呢)当我们new对象的时候,就必然回在内存中开辟新的空间,因此在程序结束时就必须释放掉这个空间,否则他就成为了垃圾。我们的析构函数就是用来做垃圾清扫工作的,把这个程序中new出来的空间...

2020-04-25 12:05:01 193

原创 6-9 学生成绩的快速录入(构造函数) (10分)

现在需要录入一批学生的成绩(学号,成绩)。其中学号是正整数,并且录入时,后录入学生的学号会比前面的学号大;成绩分两等,通过(Pass,录入时用1代表),不通过(Fail,录入时用0代表)。由于很多学号都是相邻的,并且学号相邻的学生成绩常常相同。所以在录入时,适当地加了速。如果当前学生的学号比前面的学号大1,且成绩与前面的成绩相同,则只输入0即可。类定义:完成Student类裁判测试程序样例...

2020-04-17 12:30:07 2333

原创 浅显易懂的RSA算法加解密过程

学RSA算法看了大佬的两个视频> 算法基本原理和公私钥的算法然后总结一下,以便以后复习学习RSA算法是这样实现的假设川建国想要发一个秘密消息给我们,就需要对这个消息进行加密。然后只有我们能够知道这个消息是什么,并且预先我们不需要再私底下通信串通秘钥。它需要以下几个步骤:1、将很多个信封放到我家邮箱里,如果有人想给我写信,就拿一个信封首先,我们需要选择一个很大的数,这里为来计算方...

2020-04-14 13:18:25 2235

原创 拷贝构造函数

这里总结构造函数、析构函数、拷贝构造函数的应用析构函数析构函数和构造函数是一对。构造函数用于创建对象,而析构函数是用来撤销对象。简单的说:一个对象出生的时候,使用构造函数,死掉的时候,使用析构函数。当然,后早函数可以拥有多个,但是析构函数永远只有一个。不过如果咱们没写,析构函数会和构造函数一样自动调用一个空白的。析构函数在构造函数名前加“~”析构函数没有返回值类型,没有return...

2020-04-08 21:43:34 239

原创 6-7 体育俱乐部I(构造函数) (10分)

一个俱乐部需要保存它的简要信息,包括四项:名称(字符串),成立年份(整数),教练姓名(字符串)和教练胜率(0-100之间的整数)。用键盘输入这些信息后,把它们分两行输出:第一行输出名称和成立年份,第二行输出教练姓名和胜率。裁判测试程序样例:#include <iostream>#include <string>using namespace std;class C...

2020-04-08 13:52:35 1642

原创 6-8 学生排名表(析构函数) (10分)

这是一个程序填空题现在输入一批学生(人数大于0且不超过100)的名次和他们的姓名。要求按名次输出每个人的排名。输入格式:每行为一个学生的信息,共两项,第一项为排名(为正整数,且任意两名学生的排名均不同),第二项为学生姓名。当输入-1时,表示输入结束。输出格式:按名次输出学生姓名,每行一个。函数接口定义:main函数的一部分。裁判测试程序样例:#include <iostream...

2020-04-08 13:24:27 2722 4

原创 7-7 求两点之间距离 (20分)

定义一个Point类,有两个数据成员:x和y, 分别代表x坐标和y坐标,并有若干成员函数。 定义一个函数Distance(), 用于求两点之间的距离。输入格式:输入有两行: 第一行是第一个点的x坐标和y坐标; 第二行是第二个点的x坐标和y坐标。输出格式:输出两个点之间的距离,保留两位小数。输入样例:0 9 3 -4输出样例:13.34#include<iostream&gt...

2020-04-02 17:21:23 5573

原创 7-2 例4-3游泳池改造预算 (20分)

例4-3一圆形游泳池如图所示,现在需在其周围建一圆形过道,并在其四周围上栅栏。栅栏价格为35元/米,过道造价为20元/平方米。过道宽度为3米,游泳池半径由键盘输入。要求编程计算并输出过道和栅栏的造价。7a08ad96-69ef-42b8-9889-114a2010c7a0.png输入格式:输入一个整数或小数。输出格式:分两行输出:在第一行中输出栅栏的造价。在第二行输出过道的造价。输入样...

2020-04-01 22:01:43 6585 1

原创 7-1 立方体类的实现 (20分)

立方体类Box的实现,完成计算体积、计算表面积、输出结果等功能。其中给定的主函数为:int main( ){float ab;cin>>ab;Box obj;obj.seta( ab );obj.getvolume( );obj.getarea( );obj.disp( );return 0;}输入格式:立方体的边长,可以是float类型的数据。输出格式:...

2020-04-01 22:01:21 5315

原创 7-3 类的定义和使用 (20分)

请定义一个Point类,有两个数据成员:x和y, 分别代表x坐标和y坐标,并有若干构造函数和一个移动的成员函数,可输出移动后新的坐标值。输入:第一行的两个数 分别表示 点的x坐标和y坐标。 第二行的两个数 分别表示 x和y方向移动的距离。输出:移动后的点的x坐标和y坐标。输入样例:1 52 5输出样例:3 10...

2020-04-01 22:00:15 2703

空空如也

空空如也

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

TA关注的人

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