C++
_77777
希望通过CSDN记录自己技术成长的点点滴滴
展开
-
1018: *第四周程序填空题3,自定义数组
题目描述写一个二维数组类 Array2,使得下面程序的输出结果是:0,1,2,3,4,5,6,7,8,9,10,11,next0,1,2,3,4,5,6,7,8,9,10,11,程序:#include #include using namespace std;class Array2 {// 在这里输入你的代码};int main() {Array2 a(3,4);int i,j;for( i = 0;i < 3; ++i )for( j = 0; j &l原创 2021-03-24 11:13:22 · 119 阅读 · 0 评论 -
1017: 惊呆!Point竟然能这样输入输出
题目描述程序填空#include using namespace std;class Point {private:int x;int y;public:Point() { };// 在这里输入你的代码};int main(){Point p;while(cin >> p) {cout << p << endl;}return 0;}输入多组数据,每组两个整数输出对每组数据,输出一行,就是输入的两个整数样例输入 Copy2原创 2021-03-24 11:10:40 · 265 阅读 · 0 评论 -
1016: 看上去好坑的运算符重载
题目描述程序填空#include using namespace std;class MyInt{int nVal;public:MyInt( int n) { nVal = n ;}// 在这里输入你的代码};int Inc(int n) {return n + 1;}int main () {int n;while(cin >>n) {MyInt objInt(n);objInt-2-1-3;cout << Inc(objInt);cout原创 2021-03-24 11:09:15 · 178 阅读 · 0 评论 -
1015: MyString
题目描述补足MyString类,使程序输出指定结果#include #include #include using namespace std;class MyString {char * p;public:MyString(const char * s) {if( s) {p = new char[strlen(s) + 1];strcpy(p,s);}elsep = NULL;}~MyString() { if§ delete [] p; }// 在这里输入你的代码原创 2021-03-24 11:07:04 · 156 阅读 · 0 评论 -
1014: 这个指针哪来的
题目描述填空,按要求输出#include using namespace std;struct A{int v;A(int vv):v(vv) { }// 在这里输入你的代码};int main(){const A a(10);const A * p = a.getPointer();cout << p->v << endl;return 0;}输入无输出10样例输出 Copy10#include <iostream>原创 2021-03-24 11:05:12 · 81 阅读 · 0 评论 -
1013: 编程填空:统计动物数量
题目描述代码填空,使得程序能够自动统计当前各种动物的数量#include using namespace std;// 在这里输入你的代码void print() {cout << Animal::number << " animals in the zoo, " << Dog::number << " of them are dogs, " << Cat::number << " of them are cats" <原创 2021-03-24 11:03:53 · 160 阅读 · 0 评论 -
1012: Big & base 封闭类问题
题目描述程序填空,输出指定结果#include #include using namespace std;class Base {public:int k;Base(int n):k(n) { }};class Big{public:int v;Base b;// 在这里输入你的代码};int main(){int n;while(cin >>n) {Big a1(n);Big a2 = a1;cout << a1.v <<原创 2021-03-24 11:01:58 · 213 阅读 · 0 评论 -
1011: 返回什么才好呢
题目描述程序填空,使其按要求输出#include using namespace std;class A {public:int val;A(int// 在这里输入你的代码};int main(){int m,n;A a;cout << a.val << endl;while(cin >> m >> n) {a.GetObj() = m;cout << a.val << endl;a.GetObj(原创 2021-03-24 10:59:39 · 95 阅读 · 0 评论 -
1010: 哪来的输出
题目描述程序填空,输出指定结果#include using namespace std;class A {public:int i;A(int x) { i = x; }// 在这里输入你的代码};int main(){A a(1);A * pa = new A(2);delete pa;return 0;}输入无输出21样例输出 Copy21#include <iostream>using namespace std;class A {p原创 2021-03-24 10:57:10 · 97 阅读 · 0 评论 -
1009: 超简单的复数类
题目描述下面程序的输出是:-3-4i5+6i请补足Complex类的成员函数。不能加成员变量。#include #include #include using namespace std;class Complex {private:double r,i;public:void Print() {cout << r << (i > 0 ? “+” : “”) << i << “i” << endl;}// 在这原创 2021-03-24 10:54:17 · 148 阅读 · 0 评论 -
1008: 奇怪的类复制
题目描述程序填空,使其输出9 22 5#include using namespace std;class Sample {public:int v;// 在这里输入你的代码};void PrintAndDouble(Sample o){cout << o.v;cout << endl;}int main(){Sample a(5);Sample b = a;PrintAndDouble(b);Sample c = 20;PrintAndDou原创 2021-03-23 13:07:25 · 129 阅读 · 0 评论 -
1006: 神秘的数组初始化
题目描述填空,使得程序输出指定结果#include using namespace std;int main(){int * a[] = {// 在这里输入你的代码};*a[2] = 123;a[3][5] = 456;if(! a[0] ) { cout << * a[2] << "," << a[3][5];}return 0;}输入无输出123,456样例输出 Copy123,456#include <iostre原创 2021-03-23 13:01:33 · 119 阅读 · 0 评论 -
1005: 好怪异的返回值
题目描述填空,使得程序输出指定结果#include using namespace std;// 在这里输入你的代码getElement(int * a, int i){return a[i];}int main(){int a[] = {1,2,3};getElement(a,1) = 10;cout << a[1] ;return 0;}输入无输出10样例输出 Copy10#include <iostream>using namesp原创 2021-03-23 12:34:05 · 88 阅读 · 0 评论 -
1004: 难一点的swap
题目描述填空,使得程序输出结果是:5,3#include using namespace std;void swap(// 在这里输入你的代码){int * tmp = a;a = b;b = tmp;}int main(){int a = 3,b = 5;int * pa = & a;int * pb = & b;swap(pa,pb);cout << *pa << “,” << * pb;return 0;}原创 2021-03-22 13:06:13 · 94 阅读 · 0 评论 -
1003: 简单的swap
题目描述填空,使得程序输出结果是:5,3#include using namespace std;class A{public:int x;int getX() { return x; } };void swap(// 在这里输入你的代码){int tmp = a.x;a.x = b.x;b.x = tmp;}int main(){A a,b;a.x = 3;b.x = 5;swap(a,b);cout << a.getX() <<原创 2021-03-22 13:03:44 · 141 阅读 · 0 评论 -
1070: C++:泛型编程stack(括号匹配)
题目描述假设表达式中包含一种括号:圆括号,其嵌套顺序随意,即(()())或(())等为正确的格式,)(或((())或())均为不正确的格式。检验括号是否匹配可以用堆栈来实现当遇到 ( 时进栈,遇到 ) 时出栈进行匹配检验,如果出现不匹配的情况立即结束,否则继续取下一个字符。如果没有遇到不匹配的情况,最后判断栈是否为空,栈为空,括号匹配,否则不匹配。输入包括多组数据。每组1行,为包含括号的表达式。输出如果是正确的格式,输出“Yes”,否则输出“No”样例输入 Copy(()())(())((原创 2021-03-20 21:52:43 · 190 阅读 · 0 评论 -
1069: C++:泛型编程set(排序去重)
题目描述新春过后的第一次比赛,相信大家都已经准备好了。那么就为大家热下身吧。问题很简单,对一组输入的数据进行排序。 对输入的数据,我们有如下的约定:所有的输入数据都为正整数,且都不大于300000000。但是输入的数据可能会有重复,排序时,应将重复的数据合并,即同样的数只处理一次。输入只有一组数据,以0结尾。输出输出排序后的数据(不含0),其中相同的数应只显示1个。样例输入 Copy1 2 2 3 2 3 4 0样例输出 Copy1 2 3 4提示注意:相邻数之间有一个空格,最后一个数原创 2021-03-20 21:48:40 · 126 阅读 · 0 评论 -
1068: C++:运算符重载3(单目:日期自增)
题目描述定义日期类,重载自增运算。输入包括多组数据,每组包括3个整数表示一个日期中的年、月、日。输出日期的下一天。输出格式见样例。样例输入 Copy2000 1 22012 2 282001 2 282011 12 312012 4 30样例输出 Copy2000/1/32012/2/292001/3/12012/1/12012/5/1# include <iostream>using namespace std;class Date{public:原创 2021-03-20 21:46:46 · 477 阅读 · 0 评论 -
1067: C++:运算符重载2(双目:复数的减法)
题目描述定义复数类,用友元函数重载复数的减法。输入输入数据有若干行。每行上有四个整数,前两个表示一个复数的实部和虚部,后两个表示另一个复数的实部和虚部。输出对于每一组数据,输出两复数的差,格式参照样例输出。样例输入 Copy1 2 3 44 3 2 11 2 3 23 2 3 1样例输出 Copy-2-2i2+2i-2+0i0+1i# include <iostream>using namespace std;class Complex{public :原创 2021-03-20 21:45:23 · 360 阅读 · 0 评论 -
1066: C++:运算符重载1(分数的加法)
题目描述设计一个分数类rationalNumber,该类中包括分子和分母两个成员数据,并具有下述功能:(1)建立构造函数,它能防止分母为零(分母为0时,输出"denominator equal zero"),当分数不是最简形式时进行约分,并避免分母为负数。(2)重载加法运算符。输入输入数据第一行为一个整数T,表示有T组数据。每组数据一行,包含四个整数,分别表示两个分数a,b的分子和分母:分子 分母 分子 分母。输出对于每一组数据,输出两个分数相加的结果,格式参照样例输出。样例输入 Copy原创 2021-03-20 21:44:02 · 858 阅读 · 0 评论 -
1065: C++:抽象类(圆与正方形) - 要注意浮点运算的顺序!
题目描述应用抽象类,求圆、圆内接正方形和圆外切正方形的面积和周长。输入输入数据第一行为一个整数T,表示有T组数据。每组数据一行,为一浮点数,表示圆的半径。输出对于每一组数据,分别输出结果,小数点后保留四位精度。格式参照样例输出。pi取3.14。样例输入 Copy2424.45样例输出 CopyCircle area is:50.2400Circle perimeter is:25.1200Incircle Rectangle area is:32.0000Incircle Rec原创 2021-03-20 21:42:31 · 738 阅读 · 0 评论 -
1064: C++:多态性2(图形的面积)
题目描述定义一个形状类shape,将它作为基类派生出类:circle(圆)、triangle(三角形)和rectangle(长方形)。分别定义这些派生类并且定一个虚函数来计算各个形状的面积。输入包含多组测试例, 每组数据的占1行,分别是圆的半径、三角形的三条边长和长方形的两条边长。输出圆、三角形、长方形的面积(保留3位小数)。样例输入 Copy10 3 4 5 6 815.5 5.8 12.5 13.4 10.56 12.54样例输出 Copy314.0006.00048.000原创 2021-03-20 21:40:42 · 574 阅读 · 0 评论 -
1063: C++:多态性1(动态联编测试)
题目描述有一个名为Shape的基类,它有2个派生类:Circle(圆)和Rectangle(长方形)。测试程序如下:int main(){ double x,y,r,x2,y2;Shape *p;while (cin>>x>>y>>r){ p=new Circle(x,y,r); p->print();cin>>x>>y>>x2>>y2; p=new Rectangle(x,y,x2,y2)原创 2021-03-19 15:57:50 · 313 阅读 · 0 评论 -
1062: C++:继承3(是圆内、圆外还是圆
题目描述定义点类为基类,其数据成员x和y为私有成员。再定义圆类继承点类,该点为圆的圆心,新增数据成员圆的半径。在圆类中定义成员函数,其形式参数为一个点,判断该点是在圆内部、圆外还是圆上。输入包含多组测试例, 每组数据的第1行是圆心的坐标,第2行是圆的半径,第3行是另外一个点的坐标。输出如果点在圆内部输出“in”,点在圆外输出“out”,点在在圆上输出“on”。样例输入 Copy0 086 80 0106 80 0126 8样例输出 Copyoutonin提示不要使原创 2021-03-19 15:56:13 · 500 阅读 · 1 评论 -
1061: C++:继承2(建筑物)
题目描述建立一个基类Building ,用来存储一座楼房的层数、房间数以及它的总平方英尺数。建立派生类Housing,继承Building,并存储下面的内容:卧室和浴室的数量,另外,建立派生类Office,继承Building,并存储灭火器和电话的数目。然后,编制应用程序,建立住宅楼对象和办公楼对象,并输出它们的有关数据。输入输入数据第一行为一个整数T,表示有T组数据。每组数据二行,每行包括五个数。第一行:层数 房间数 总平方英尺数 卧室数 浴室数第二行:层数 房间数 总平方英尺数 灭火器数 电话原创 2021-03-19 15:54:39 · 998 阅读 · 0 评论 -
1060: C++:继承1(矩形右上角坐标)
题目描述定义点类为基类,其数据成员x和y为私有成员。再定义矩形类继承点类,该点为矩形的左下角,新增数据成员矩形的2条边长。计算并且显示矩形右上角的坐标。输入包含多组测试例, 每组数据的第1行是矩形左下角的坐标,第2行是矩形的2条边长。输出矩形右上角的坐标。样例输入 Copy-4 58 10100 -6052 32样例输出 Copy4 15152 -28# include <iostream>using namespace std;class Point{pu原创 2021-03-19 15:53:04 · 406 阅读 · 0 评论 -
1059: C++:类模板2(多个数中的最大数)
题目描述定义类模板,类中包含一个有k(0<k<20)个元素的数组;定义成员函数max()求出这k个元素中的最大数。在main()中建立对象,调用max()求多个整数和多个实数中的最大数。注意必须使用类模板。输入有4行。第1行是整数的个数n (0<n<20) ,第2行是n个整数;第3是实数的个数m ( 0<m<20),第4行是m个实数。输出有2行。第1行n个整数中的最大数,第2行为m个实数中的最大数。样例输入 Copy46 10 8 537.556原创 2021-03-19 15:51:27 · 495 阅读 · 0 评论 -
1058: C++:类模板1(2个数的大数)
题目描述定义类模板,类中包含两个数据成员,定义成员函数max()求这两个数中的大数。在main()中调用max()求两个整数和两个实数中的大数。将下面的程序填写完整。#include using namespace std;………………………………………………………………………………………………………………int main(){int a,b;double c,d;cin>>a>>b>>c>>d;Test t1(a,b);Test原创 2021-03-19 15:49:57 · 1183 阅读 · 0 评论 -
1057: C++:函数模板2(多个数的和)
题目描述定义函数模板sum()求多个数的和。在main()中调用sum()求多个整数和多个实数的和。注意必须使用函数模板。输入有4行。第1行是整数的个数n(0<n<20),第2行是n个整数;第3是实数的个数m (0<m<20),第4行是m个实数。输出有2行。第1行n个整数的和,第2行为m个实数的和(保留2位小数)。样例输入 Copy46 7 10 835.26 7.556 9.258样例输出 Copy3122.07# include <iost原创 2021-03-19 15:48:05 · 1068 阅读 · 0 评论 -
1056: C++:函数模板1(2个数的和)
题目描述定义函数模板sum()求两个数的和。在main()中调用sum()求2个整数和两个实数的和。注意必须使用函数模板。输入有2行。第1行2个整数,第2行为2个实数。输出有2行。第1行是2个整数的和,第2行是2个实数的和(保留3位小数)。样例输入 Copy5 65.2658 8.6378样例输出 Copy1113.904# include <iostream># include <iomanip>using namespace std;templ原创 2021-03-19 15:46:28 · 1807 阅读 · 0 评论 -
1055: C++:重载函数2(计算面积)
题目描述定义重载函数area(),分别计算正方形、长方形和三角形的面积。输入共计有3行。第1行有一个实数,为正方形的边长;第2行有二个实数,为长方形的两条边长;第3行有三个实数,为三角形的三边长。输出正方形、长方形和三角形的面积(保留3位小数)。样例输入 Copy3.54.2 5.623.0 4.0 5.0样例输出 Copy12.25023.6046.000# include <iostream>using namespace std;# includ原创 2021-03-19 15:44:27 · 5223 阅读 · 0 评论 -
1054: C++:重载函数1(和与连接)
题目描述定义一个重载函数求二个数的和。将下面的程序填写完整。#includeusing namespace std;…int main(){int a,b;double c,d;char e[100],f[100];cin>>a>>b>>c>>d>>e>>f;cout<<add(a,b)<<endl;cout<<add(c,d)<<endl;cout<<原创 2021-03-19 15:42:52 · 278 阅读 · 0 评论 -
1053: C++:友元3(复数的加法)
题目描述定义复数类,用友元函数实现两个复数的加法。输入输入数据有若干行。每行上有四个整数,前两个表示一个复数的实部和虚部,后两个表示另一个复数的实部和虚部。输出对于每一组数据,输出两个复数的和,格式参照样例输出。样例输入 Copy1 2 -3 -44 3 2 -11 2 -3 23 2 -3 1样例输出 Copy-2-2i6+2i-2+4i0+3i# include <iostream>using namespace std;class Complex{原创 2021-03-11 23:09:51 · 1088 阅读 · 0 评论 -
1052: C++:友元2(时间之差)
题目描述定义一个时间类,包括私有成员时、分、秒,再定义一个友元函数用来计算2个时间点相差的秒数。输入包括多组数据,每组数据有6个整数,用来表示2个时间点。输出2个时间点相差的秒数。样例输入 Copy15 45 10 5 45 4020 55 40 20 12 50样例输出 Copy15:45:10-5:45:40=3597020:55:40-20:12:50=2570# include <iostream>using namespace std;class Time原创 2021-03-11 23:08:44 · 797 阅读 · 1 评论 -
1051: C++:友元1(两点之间的距离)
题目描述定义一个二维平面中的点(point)类,类中的数据成员为点的坐标,然后定义友元函数dist()用来计算两点之间的距离。将下面的程序1 和程序2填写完整。程序1 :#include #include #include using namespace std;………………………………………………………………………………………………………………int main(){int n;double x1,x2,y1,y2;cin>>n;while (n–){cin&原创 2021-03-11 23:07:42 · 1354 阅读 · 0 评论 -
1050: C++:类与对象6(静态成员:平均分)
题目描述输入多个(不超过20个)学生的学号与分数,计算所有学生的平均分。要求:使用类的静态成员来计算。输入多个学生的学号与分数。输出所有学生的平均分(保留2位小数)。样例输入 Copyzhangsan 500lisi 528wangwu 546zhaoliu 512样例输出 Copy521.50# include <iostream># include <iomanip>using namespace std;class Student原创 2021-03-11 23:05:39 · 493 阅读 · 0 评论 -
1049: C++:类与对象5(矩形的面积与周长)
题目描述定义并测试一个类名为rectangle的矩形类,数据成员为矩形的长和宽,定义2个成员函数分别计算矩形的面积与周长,要求定义构造函数和拷贝构造函数。输入输入数据第1行为一个整数T,表示有T组数据。每组数据1行,每行包括矩形的长和宽2个整数。输出矩形的面积与周长。样例输入 Copy23 54 10样例输出 Copy15 1640 28# include <iostream>using namespace std;class rectangle{public原创 2021-03-11 23:02:21 · 2194 阅读 · 0 评论 -
1048: C++:类与对象4(对象成员:点与矩形)
题目描述定义点类,再定义矩形类,矩形包含2个点,分别表示对角顶点。输入2个顶点的坐标,计算矩形的面积。输入输入包含n组测试例, 第1行是测试组数。第2行–第n+1行为测试数据,每组测数据有4个整数,表示 2个顶点的坐标。输出每个矩形的面积。样例输入 Copy20 0 4 50 7 8 0样例输出 Copy2056#include <iostream>using namespace std;// 在这里输入你的代码class Test{public: vo原创 2021-03-11 22:59:38 · 613 阅读 · 1 评论 -
1047: C++:类与对象3(日期类)
题目描述定义一个类Date,类中有3个私有成员year、month和day,两个共有成员函数setday()和display(),前一个用来设置日期,后一个用来显示日期。在main()中定义2个对象,设置2个具体的日期,然后输出这2个日期。输入输入2个日期的year、month和day。输出按照"年/月/日"的格式显示2个日期。样例输入 Copy1993 10 12012 5 30样例输出 Copy1993/10/12012/5/30# include <iostream>原创 2021-03-11 22:57:44 · 799 阅读 · 0 评论 -
1045: C++:类与对象1(类测试程序)
题目描述下面是一个类的测试程序,请补充编写能使用如下测试程序正常运行的类Test:int main(){int a,b;Test x;while(cin>>a>>b){x.set(a,b);x.show();}return 0;}输入 两个整数a和b,计算a-b。#include <iostream>using namespace std;// 在这里输入你的代码int main(){ int a, b; Test x;原创 2021-03-11 22:49:07 · 844 阅读 · 0 评论