SDUSTOJ
文章平均质量分 78
EricTCartman
这个作者很懒,什么都没留下…
展开
-
Problem A: 克隆人来了!
Description克隆技术飞速发展,克隆人已经成为现实了!!所以,现在由你来编写一个Person类,来模拟其中的克隆过程。这个类具有2个属性:name——姓名(char*类型),和age——年龄(int类型)。该类具有无参构造函数(人名为“no name”,年龄是0)、带参数构造函数、拷贝构造函数以及析构函数外,还有以下3个成员函数:1. void Person::showPe原创 2017-05-10 19:43:52 · 907 阅读 · 1 评论 -
Problem D: 字符类的封装
Description先来个简单习题,练练手吧!现在需要你来编写一个Character类,将char这一基本数据类型进行封装。该类中需要有如下成员函数:1. 无参构造函数。2. 构造函数Character(char):用参数初始化数据成员。3. void setCharacter(char):重新设置字符值。4. int getAsciiCode():返回字符的ASII码。原创 2017-05-06 16:51:18 · 418 阅读 · 0 评论 -
Problem A: 好多书啊!
Description每次开学,都要买好多教材,好多好多的money就这样不见了,见了,了,......我们以教材款的总额来表示我们的伤心度。所以!我们需要首先计算出我们花了多少钱!定义一个类Book,拥有1.数据成员name(string类型)和price(double类型)。2.构造函数(含缺省构造函数)以及析构函数。它们都要输出一行文字,格式见样例(注意输出最后有换行原创 2017-05-06 17:05:35 · 575 阅读 · 0 评论 -
Problem B: 类的初体验(IV)
Description定义一个类Data,只有一个int类型的属性和如下方法:1. 缺省构造函数,将属性初始化为0,并输出"Data's default constructor."。2. 带参构造函数,将属性初始化为指定参数,并输出"Data # is created.",其中“#”即参数值。3. 析构函数,输出:"Data # is erased.",其中“#”是属性值原创 2017-05-06 18:22:35 · 989 阅读 · 0 评论 -
Problem C: 类的初体验(V)
Description定义一个类Data,只有一个int类型的属性和如下方法:1. 缺省构造函数,将属性初始化为0,并输出"Data's default constructor."。2. 析构函数,输出:"Data # is erased.",其中“#”是属性值。4. int getValue()——获得属性值。5. void setValue(int)原创 2017-05-06 19:45:46 · 2319 阅读 · 0 评论 -
Problem A: 从点到面
Description一个矩形可以由左上角和右下角的顶点而唯一确定。现在请定义两个类:Point和Rectangle。其中Point类有x和y两个属性(均为int类型),表示二维空间内一个点的横纵坐标,并具有相应的构造函数、析构函数和拷贝构造函数。此外,还有getX()和getY()方法用以得到一个点的坐标值。Rectangle类有leftTop和rightBottom两个属性(均原创 2017-05-07 09:56:22 · 864 阅读 · 0 评论 -
Problem B: 平面上的点和线——Point类、Line类 (III)
Description在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定,两点确定一条线段。现在我们封装一个“Point类”和“Line类”来实现平面上的点的操作。根据“append.cc”,完成Point类和Line类的构造方法和show()方法,输出各Line对象和Point对象的构造和析构次序。接口描述:Point::show()方法:按格式输出Po原创 2017-05-08 20:13:11 · 922 阅读 · 0 评论 -
Problem C: 平面上的点和线——Point类、Line类 (IV)
Description在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定,两点确定一条线段。现在我们封装一个“Point类”和“Line类”来实现平面上的点的操作。根据“append.cc”,完成Point类和Line类的构造方法和show()方法,输出各Line对象和Point对象的构造和析构次序。接口描述:Point::show()方法:按格式输出Po原创 2017-05-08 20:33:23 · 612 阅读 · 0 评论 -
Problem D: 平面上的点和线——Point类、Line类 (V)
Description在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定,两点确定一条线段。现在我们封装一个“Point类”和“Line类”来实现平面上的点的操作。根据“append.cc”,完成Point类和Line类的构造方法和show()方法,输出各Line对象和Point对象的构造和析构次序。接口描述:Point::show()方法:按格式输出Point对原创 2017-05-08 21:09:23 · 460 阅读 · 0 评论 -
Problem A: 自定义实数及其数组
Description众所周知,实数在计算机内是不能精确表示的,有些实数在存储时会产生误差。为解决这个问题,对于小数部分不包含前导和后缀0的实数(0除外),可以用两个整数分别来表示其整数部分和小数部分。如:3.14,可以分解为3和14。请基于这一思想,设计一个程序,用两个整数来表示一个实数,并利用这个新的实数类型构建一个数组,实现数组的元素插入、删除和排序。具体而言,需要定义2个类:原创 2017-05-30 07:28:21 · 367 阅读 · 0 评论 -
Problem B: 一帮学生
Description学生Student类是Person类的子类,而且每个人都有生日,生日是Date类的对象。所以,需要定义如下类:1. Date类:拥有年、月、日三个int类型的属性。2. Person类:有一个Date类型对象的属性(表示生日)、string类型属性(表示名字),以及一个int类型的静态属性numOfPersons(对象个数)。3. Student类:是Pe原创 2017-05-30 08:23:59 · 1103 阅读 · 0 评论 -
Problem C: 农夫果园
Description一果农,家里有苹果树、梨树,2016年收成不错,现在需要你来编程,求一下去年总共收获了多少斤的水果。Input第一行N表示之后有N行输入。之后的N行输入,每行一个水果。包括一个字符和一个整数。其中字符是‘a’或‘p’,分别表示是一个苹果或梨。整数是这个水果的重量。Output见样例。Sample Input5a原创 2017-05-30 08:57:19 · 1965 阅读 · 0 评论 -
Problem A: 家教课程
Description老师都是穷人,所以需要经常去外面搞点兼职啥的。可是除了上课,啥也不会啊。所以就只好做家教了。现在请利用面向对象的思想设计这样一个系统。具有如下类:1. Person类:有一个string类型的属性,表明对象的名字。是Student和Teacher的父类。2. Student类:是Person类的子类,拥有一个int类型的属性,表明对象的序号。3. Teac原创 2017-05-30 08:58:51 · 1754 阅读 · 0 评论 -
Problem A: 输出满足和为S的数
Description输入N个整数,输出其中和为指定值S的两个数。Input输入有多行,第1行是整数S,是给定的特定的和。之后若干行,每行是一个整数,所有的数互不相等。Output输出输入的数中,和为S的的数。每行输出一个算式,格式为:a + b = S其中a、b是输入的两个数,且aSample Input10123456原创 2017-05-30 16:15:34 · 559 阅读 · 0 评论 -
Problem B: 寻找学生
Description在若干名学生中,寻找指定学号的学生的姓名。Input第一行N>0是一个整数,表示有N个学生。之后的N行,每行包括1个整数和1个字符串,整数是学生的学号,字符串是学生的姓名(不含空白符)。之后输入的若干行,每行是一个整数,表示要查找的学生的学号。Output每个输入的要查找的学号,对应一行输出,即该学号对应的学生的姓名。如果学号不存在原创 2017-05-30 16:28:24 · 615 阅读 · 0 评论 -
Problem C: 一元二次方程类
Description定义一个表示一元二次方程的类Equation,该类至少具有以下3个数据成员:a、b和c,用于表示方程“a*x*x + b*x +c = 0”。同时,该类还至少具有以下两个成员函数:1. void solve():用于求方程的根。2. void printRoot():用于输出方程的根。设定:1. 所有输入的a、b、c所生成的方程必定有个2个不同的实根。原创 2017-05-06 16:40:00 · 977 阅读 · 0 评论 -
Problem B: 平面上的点——Point类 (II)
Description在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定。现在我们封装一个“Point类”来实现平面上的点的操作。根据“append.cc”,完成Point类的构造方法和show()方法,输出各Point对象的构造和析构次序。接口描述:Point::show()方法:按输出格式输出Point对象。Input输入多行,每行为一组坐标“原创 2017-05-06 16:14:20 · 1218 阅读 · 0 评论 -
Problem C: 点在圆内吗?
Description定义一个Point类和Circle类,用于判断给定的一系列的点是否在给定的圆内。其中,Point类:1.有2个成员x和y,分别为其横坐标和纵坐标;1个静态成员numOfPoints,用于计算生成的点的个数。2.具有构造函数、析构函数和拷贝构造函数,具体格式输出根据样例自行判断。3. 具有静态方法int getNumOfPoints(),用于返回numO原创 2017-05-10 20:28:33 · 1292 阅读 · 0 评论 -
Problem D: 质心算法
Description在很多应用中,需要对某个目标进行定位。比如对于一个未知坐标的点A,假定已知A点与N个点相邻,且已知N个相邻点的坐标,则可取N个点的质心作为A点坐标的一个估计值。所谓质心,就是指其横坐标、纵坐标分别为N个点的横坐标平均值、纵坐标平均值的点。即:假定N个点的坐标分别(x1,y1),(x2,y2),......,则质心的坐标为((x1+x2+...)/N, (y1+y2原创 2017-05-12 14:21:42 · 1725 阅读 · 0 评论 -
Problem A: 时间类的拷贝和整体读写
Description封装一个时间类Time,用于时间处理的相关功能,支持以下操作:1. Time::Time()无参构造方法。2. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象。3. Time::Time(const T&)拷贝构造方法。拷贝构造函数调用时输出“There was a call to the copy constru原创 2017-05-12 14:36:50 · 554 阅读 · 0 评论 -
Problem B: 时间类的错误数据处理
Description封装一个时间类Time,用于时间处理的相关功能,支持以下操作:1. Time::Time()无参构造方法。2. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象。3. Time::Time(const T&)拷贝构造方法。4. 成员读函数: Time::hour() :返回Time的小时数; T原创 2017-05-12 14:48:19 · 581 阅读 · 0 评论 -
Problem C: 选举班干部了!
Description新学期伊始,某班要通过竞争上岗方式竞选班干部。包括班长、团支书等。现在需要你来设计2个类Student和StudentCadre来模拟这一过程。1.Student类是学生类,包括(1)属性:string name——姓名。bool sex——性别。int grade——年级。Student *next——指向下一个学生指针。(2)方法:构造函数St原创 2017-05-12 15:16:19 · 1098 阅读 · 0 评论 -
Problem A: 你会定义类吗?
Description定义一个类Demo,有构造函数、析构函数和成员函数show(),其中show()根据样例的格式输出具体属性值。该类只有一个int类型的成员。Input输入只有一个整数,int类型范围内。Output见样例。Sample Input-100Sample OutputA data 10 is crea原创 2017-05-12 15:22:11 · 854 阅读 · 0 评论 -
Problem B: 图形计数与求面积
Description定义三个类:Shape、Circle和Square,其中Shape为抽象类,包括:1. 用于记录Shape类及其子类对象(即图形)个数的静态数据成员。2. 构造函数与析构函数。3. 获得图形个数的静态成员函数 static int getNumOfShapes(),以及4. 求图形面积的纯虚函数getArea()。类Circle是Shape类的子类原创 2017-05-12 16:17:09 · 600 阅读 · 0 评论 -
Problem B: 时间类的成员读写
Description封装一个时间类Time,用于时间处理的相关功能,支持以下操作:1. Time::Time()无参构造方法。2. 成员读函数: Time::hour() :返回Time的小时数; Time::minute():返回Time的分钟数; Time::second():返回Time的秒数。3. 成员写函数: Time::hou原创 2017-05-06 11:16:05 · 1081 阅读 · 0 评论 -
Problem A: 时间类的构造和输出
Description封装一个时间类Time,用于时间处理的相关功能,支持以下操作:1. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象。2. Time::showTime()方法:输出“hh:mm:ss”,不足两位的要前面补0。你设计一个时间类Time,使得main()函数能够正确运行。函数调用格式见append.cc。原创 2017-05-06 11:30:10 · 1322 阅读 · 0 评论 -
Problem C: 整数的封装
Description现在,请编写一个Integer类,将整数封装起来。目前,只需要你来实现最基本的功能:1. 具有2个构造函数:(1)Integer::Integer(int):根据参数构建一个整数对象。(2)Integer::Integer(char*, int):根据给定的字符串和进制来构建一个整数对象。2. 具有一个int Integer::getValue()方法原创 2017-05-06 14:51:54 · 1559 阅读 · 0 评论 -
Problem A: 类的初体验
Description定义一个类Data,只有一个double类型的属性和如下3个方法:1. void init(double d);——初始化属性值。2. double getValue()——获得属性值。3. void showValue()——显示属性值。Input一个double类型的数值。Output输出输入的值2次,每原创 2017-05-06 15:05:43 · 527 阅读 · 0 评论 -
Problem B: 类的初体验(II)
Description定义一个类Data,只有一个double类型的属性和如下3个方法:1. 带1个参数的构造函数——初始化属性值为参数值。2. double getValue()——获得属性值。3. void showValue()——显示属性值。Input一个double类型的数值。Output输出输入的值2次,每次占一行。原创 2017-05-06 15:15:42 · 698 阅读 · 0 评论 -
Problem C: 类的初体验(III)
Description定义一个类Data,只有一个double类型的属性和如下4个方法:1. 缺省构造函数,将属性初始化为0,并输出“Initialize a data 0”。2. 带参构造函数,将属性初始化为指定参数,并输出“Initialize a data #”,其中“#”即参数值。2. double getValue()——获得属性值。3. vo原创 2017-05-06 15:20:21 · 330 阅读 · 0 评论 -
Problem A: 平面上的点——Point类 (I)
Description在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定。现在我们封装一个“Point类”来实现平面上的点的操作。根据“append.cc”,完成Point类的构造方法和show()方法。接口描述:Point::show()方法:按输出格式输出Point对象。Input输入多行,每行为一组坐标“x,y”,表示点的x坐标和y坐标,x和原创 2017-05-06 15:25:37 · 477 阅读 · 0 评论 -
Problem C: 判断回文串
Description对于给定的一个字符串,判断是否是回文串。Input一个字符串。Output如果是一个回文串,则输出YES,否则输出NO。Sample InputchinanihcSample OutputYESHINT注意:1. 不能使用数组,即程序中不能出现[、]和new。2. 可以借助ve原创 2017-05-30 16:44:44 · 1022 阅读 · 0 评论