
C C++
耳语吖
有问题欢迎交流
展开
-
C++ 学生信息管理系统
本系统通过设计模板实现链表操作,功能有查询学生信息,添加和删除学生信息,根据学号、成绩等对学生进行排序输出。在程序运行开始时,从文件中读取学生信息,储存到链表中,之后对链表进行各种操作,在退出程序时能够自动将链表中的数据保存到文件中。整个系统包括四个部分:1.结点类2.链表类3.学生类4.main函数main函数主要包括3个部分:1.文件读写2.对链表操作3.功...原创 2019-07-27 23:56:59 · 1586 阅读 · 1 评论 -
整数集合运算(重载)
编写一个程序,通过重载运算符"+"、"-",实现一个整数集合的基本运算:(1)int1+int2 两个整数集合的并运算(2)int1-int2 两个整数集合的差运算输入:5 2 5 66 1 79 3 2 66 28结果:int1+int2=2 5 66 1 79 28 int1-int2=5 1 79注:第1、3行数为集合...原创 2019-03-28 10:14:03 · 1812 阅读 · 1 评论 -
日期输出(重载)
重载运算法<<,使之能够使用cout将Date类对象的值以日期格式输出。#include<iostream> using namespace std; class Date { public: int y,m,d; Date(){cin>>y>>m>>d;}; ...原创 2019-03-28 10:12:34 · 1745 阅读 · 0 评论 -
计算日期(友元)
设计一日期类Date,能够在实例化后给日期对象赋值,能够输出对象的日期。为Date类设计一友元函数,能够求得两个日期的相差天数。(为简化起见,假设每年按365天计算,每月按30天计算)提示:(1)定义日期类Date,包含3个私有数据成员year month day(2)Date包含2个公有成员Date(int y, int m, int d)和ShowDate()(3)为Date类...原创 2019-03-28 10:11:34 · 695 阅读 · 0 评论 -
求两点间距离(友元)
设计一个点类 CPoint ,其中包括两个数据成员 X 和 Y ,表示点的坐标,定义一友元函数用于求两点间距离,并将结果输出到屏幕上。#include<iostream> #include<cmath> using namespace std; class Cpoint { double x,y; public: ...原创 2019-03-28 10:10:37 · 1628 阅读 · 0 评论 -
统计单词个数
从键盘输入一句话,按回车键结束,由计数器统计输入的单字个数。定义一个计数器类,要求用构造函数把计数器的初值设置为 0 ,用一个成员函数 countWord() 用于统计单词个数,用 show() 函数将结果输出到屏幕上。#include<iostream> using namespace std; class Count { public:...原创 2019-03-28 10:09:38 · 2473 阅读 · 0 评论 -
建设游泳池
建设圆形游泳池如图所示,现在需要在其周围建一圆形过道,并在其四周围上栅栏。栅栏的价格是35元/米,过道造价是20元/平方米。过道宽度为3米,游泳池半径由键盘输入。要求编程计算并输出过道和栅栏的造价。(pi=3.14159)提示:声明类Circle,其数据成员为半径,其成员函数为构造函数、求周长函数、求面积函数。#include<iostream> using name...原创 2019-03-28 10:05:53 · 2274 阅读 · 0 评论 -
创建一个Client类
创建一个Client类要求:(1)包含有字符型指针成员m_name(姓名),整型成员m_age(年龄)(2)包含一个带参数的构造函数用来初始化每个数据成员(3)包含一个析构函数(4)包含一个显示函数display() (5) 主函数中,接收键盘输入的客户信息,根据输入建立对象并且输出客户信息。提示:成员变量为字符指针,在构造函数中要根据客户姓名的字符数用new分配...原创 2019-03-27 09:45:19 · 2088 阅读 · 0 评论 -
设置、输出日期
定义一个日期类 Date ,其中有数据成员 year,month,day 用于存放日期,还定义如下成员函数:( 1 )构造函数: Date(int y,int m,int d); 析构函数:~Date();( 2 )取日期:int GetDay(); 取月份:int GetMonth(); 取年份:int Get...原创 2019-03-27 09:44:06 · 1213 阅读 · 0 评论 -
求圆柱体体积
求圆柱体的体积,将结果输出到屏幕上。要求:( 1 )头文件用 iostream,输入输出用 cin 、 cout 。 ( 2 )定义圆柱体类,两个数据成员,圆柱体的半径和高、两个成员函数,构造函数实现设置半径和高,另一个实现计算圆柱体体积。 (3 )在主函数中实现输入圆柱体的半径、高,计算体积并输出结果。(pai =3.14 )#include<i...原创 2019-03-27 09:43:19 · 7597 阅读 · 0 评论 -
求三个数中的量大值
键盘输入三个数,请用 C ++编程方法求这三个数的最大值,并将其显示在屏幕上。要求头文件用 iostream.h ,输入输出用 cin 、 cout 。输入: 45 23 78输出: Maximum:78#include<iostream> using namespace std; int max(int a,int b,int c) { int ...原创 2019-03-27 09:42:31 · 378 阅读 · 0 评论 -
显示时间
用 C ++方法编程,实现时间的输入、输出。要求:( 1 )头文件用 iostream.h ,输入输出用 cin 、 cout 。 ( 2 )编写类Time,数据成员三个,分别存放小时、分钟和秒,成员函数包括构造函数和显示函数。 (3 )编写主函数,建立变量保存键盘输入的时间,根据它建立相应的Time类对象,并输出。输入: 12 23 30输出...原创 2019-03-27 09:41:43 · 721 阅读 · 0 评论 -
计算算术表达式
输入一带括号的四则运算算术表达式(以#结束),求该表达式的值,并将其输出。#include<iostream> #include<stack> #include<string> using namespace std; class Calculator{ private: string Polish; ...原创 2019-03-27 09:40:06 · 2296 阅读 · 2 评论 -
迷宫
编写一个程序求解迷宫问题,迷宫是一个m行n列的0-1矩阵,其中0表示无障碍,1表示有障碍,设入口为(1,1),出口为(m,n),每次移动只能从一个无障碍的单元移到其周围8个方向上任一无障碍的单元,编制程序给出一条通过迷宫的路径。要求:(1)输入m*n的迷宫矩阵,如:6 90 1 0 0 0 1 1 0 01 0 0 0 1 1 0 1 10 1 1 0 0 0 0 1 11 1 0...原创 2019-03-27 09:39:10 · 1495 阅读 · 0 评论 -
*学生成绩排序
编写一个程序,功能是对若干个同学的某门课程成绩进行排序。 要求定义一个学生类,类中私有成员有学生的编号及成绩;成员函数有建立数据、输入数据函数;编写一个友元函数能完成对成绩由高到低排序。 从键盘输入学生的个数、学号及一门课程的成绩,调用排序程序后,将排序后的结果输出。输入、输出格式如下:输入:31001 901002 801003...原创 2019-03-28 10:15:24 · 3424 阅读 · 0 评论 -
字符串比较
编个一程序判断两个字符串是否相等。要求重载“==”运算符。 输入两个字符串str1,str2: 1234 abcd 输出比较结果: str1!=str2#include<iostream> #include<stdio.h> #include<string.h> using namespace std; class B...原创 2019-03-28 10:16:18 · 900 阅读 · 4 评论 -
*矩阵操作
编写一个程序用于对矩阵进行操作。假定有一个实数矩阵,需要对它进行加法、减法和乘法运算,并且重载运算符(),用来返回矩阵元素的值。最后输出运算结果。#include<iostream> using namespace std; class Juzhen { int x,y; int c[10][10]; public: J...原创 2019-03-28 10:17:01 · 945 阅读 · 0 评论 -
C++ STL与文件处理操作总结
STL 标准库,英文为Standard Template Library。广义上讲分为三类,algorithm(算法)、container(容器)、iterator(迭代器)。打开文件的方式有:FILE *fp = fopen(filename,"w");if(!fp) cout<<("open file error!!!");读取文件的操作有:strin...原创 2019-07-17 19:44:17 · 1354 阅读 · 2 评论 -
全体列队
设计一个类模板,其中包括数据成员 T a[n]以及对其进行排序的成员函数sort(),模板参数T可实例化成字符串。提示:重载sort()PS:这个题目最初没有考虑到输入的问题,修改一下,大家在主函数里预定义不同类型的数组,键盘键入改为字符'f' 'c' 's' 之一,分别表示进行浮点数组、字符数组和字符串数组的排序。如何?#include<iostream> #inc...原创 2019-03-30 10:07:22 · 541 阅读 · 0 评论 -
小型公司管理系统
编写一个程序实现小型公司的工资管理。该公司有4类人员,经理(manager)、技术人员(technician)、销售(salesmanager)、销售经理(salesmanager)。这些人员都是职员(employee),有姓名和月工资信息。月工资的计算方法是:经理固定月薪8000元,技术人员每小时100元,销售员按当月销售额的4%提成,销售经理既拿固定月工资5000元也拿销售提成,销售提成为所管...原创 2019-03-29 09:52:35 · 7111 阅读 · 2 评论 -
快递公司运费计算
利用C++的多态性,设计一快递运费计算软件。 货物由北京可通过快递公司运往天津、上海、太原、广州、昆明、新疆六个城市,分别用1、2、3、4、5、6作为它们编号。运送货物的重量分为1、2、3公斤。快递公司有四家:E通宝、顺风、EMS和圆通,编号为1、2、3、4。不同城市、不同重量、不同的快递公司所费用由表1给出。当输入快递公司编号、城市编号和货物重量时,屏幕输出货物运送快递公司名称、到达的城市及...原创 2019-03-29 09:51:19 · 9924 阅读 · 2 评论 -
是谁在叫
定义猫科动物Felid类,由其派生出猫类(Cat)和豹类(Leopard)。Felid包含构造函数、析构函数和纯虚函数soundCat包含构造函数、析构函数和虚函数soundLeopard包含构造函数、析构函数和虚函数sound要求:定义一个Felid类指针,采用动态内存分配的方式建议一个Cat对象,并且调用sound函数,之后撤销该对象,采用动态内存分配的方式建议一个Leopar...原创 2019-03-29 09:49:52 · 963 阅读 · 0 评论 -
我是一支笔
编写一个笔(wripen)的基类,它有“写字”这个成员函数writing()。由笔(wripen)派生出铅笔类(pencil)钢笔类(pen)。其中在wripen的writing定义为纯虚函数。在pencil的writing中说“I'm a pencil.”在pen的writing中说“I'm a pen.”要求:在主函数中,定义pencil对象c ,pen的对象 p,wripe...原创 2019-03-29 09:48:57 · 985 阅读 · 0 评论 -
求图形面积
请用多态机制,编写一个程序计算三角形、矩形、圆形这三种图形的面积 设计一个图形(shape)类,类中有数据成员x、y,成员函数有构造函数、求面积函数及输出函数,后两个函数定义为纯虚函数。 由shape类派生出三角形类、矩形类和圆形类。,为矩形的长和宽, 在三角形类中x、y分别为三角形的底和高,定义求三角形面积函数及输出函数的具体实现。 在矩形类中x、y分别为三角形的长和宽,定义求矩...原创 2019-03-29 09:48:14 · 1672 阅读 · 0 评论 -
*字符串操作
定义一个基类BaseString,实现基本的输入字符串的功能。再分别定义三个派生类,要求如下: 1.定义一个ReString类,公有继承基类BaseString,实现字符串的倒置功能。如,将字符串“1234abcd”,倒置后这“dcba4321”。 2.定义一个CopyString类,公有继承基类BaseString,实现字符串的复制功能。 3.定义一个CmpString类,私有继承基类BaseS...原创 2019-03-29 09:47:25 · 1420 阅读 · 0 评论 -
天马(虚基类)
定义一个动物类Animal,成员变量包括:int型的m_weight体重,成员函数包括构造函数Animal(int )和成员函数GetWeigh().由Animal类派生出马类Horse,添加构造函数和成员函数Run(){cout<<"I can run.";}由Animal类派生出鸟类Bird,添加构造函数和成员函数Fly(){cout<<"I can fly."...原创 2019-03-29 09:45:54 · 682 阅读 · 0 评论 -
图书系统(多继承)
编写一个程序,其中有一个书类book,该类的数据成员包括:书号、书名、出版社和定价;有一个作者类author,该类的数据成员包括:姓名、年龄和写作时间,每个类都有相应的数据输入、输出。以此两个类为基类,派生出图书查询卡card,并增加一个数据成员表示书籍系统名称,及一个可以显示系统名称、书名、作者、作者年龄、出版社和定价等数据的函数。注: 输入数据内容有 系统名称 图书编号 图书名 出...原创 2019-03-29 09:44:58 · 914 阅读 · 0 评论 -
CString成员函数的实现(符号重载、动态内存)
实现了CString 类,完成了+、=、+=、<、<<、>>、[] 等符号的重载,带参/无参的动态内存存储的构造函数实现了字符串排序、查找特殊字符等功能。写了一堆bug,改了好久,勉强实现了。还有很多没有完善和优化的地方,有时间再改一改。StringLow和StringUp的意思好像是把字符串改成大小写,我好像理解错题意了.....#include&...原创 2019-04-11 09:50:17 · 695 阅读 · 0 评论 -
显示学校信息(继承性)
描述学校情况,学校里有教师和学生,他们有相同的信息,如姓名、编号、年龄等;他们又有各自特殊属性。如学生有课程和该课程的成绩,教师有职称及发表的论文数等属性。要求:(1)定义一个基类person,内有数据成员:姓名、编号,还定义构造函数和输出函数。(2)定义一个学生类student,它是person类的派生类,在类中添加数据成员:课程、成绩,定义自己的构造函数和输出函数,在函数中继承基类的函数。...原创 2019-03-29 09:41:34 · 739 阅读 · 0 评论 -
由点到圆
定义一个Point类,派生出Circle类,计算派生类对象的面积。提示(1)Point类有两个私有数据成员,即点的X和Y坐标,成员函数包括:构造函数、取坐标值函数GetX()和GetY()。(2)Circle类继承了Point类的点坐标之外,增加一个私有数据成员,即圆形的半径R,成员函数包括构造函数、取半径值函数GetR()、求面积函数Area()#include<i...原创 2019-03-28 10:21:41 · 551 阅读 · 0 评论 -
二叉排序树
设计算法,将n个数据组成二叉排序树结构,并可以删除其中的一个结点。输入:数据个数n、n个数据、需要删除的数值value。输出:原始数据、二叉排序树的中序输出及删除结点value后的结果。#include<iostream> using namespace std; template <class T> struct BTNode{ ...原创 2019-03-27 09:37:46 · 1646 阅读 · 0 评论 -
图的存储—邻接表的建立
已知一个带权有向图,其存储结构为邻接表结构 (如图1所示) ,设计一算法,由键盘输入数据,建立邻接表,并将其输出。用例说明:第一行输入图的顶点数;第二行输入顶点信息;第三行以后按行输入边的信息(位置 1 权值 1 位置 2 权值 2 ……. ,以 -1 结束)。#include<iostream> using namespace std; template...原创 2019-03-27 09:30:02 · 2950 阅读 · 2 评论 -
空心字符菱形
输入: 菱型起始字母和菱形的高度。输出: 打印空心的由字符组成的菱形。#include<stdio.h>main(){int b,i,j;char a;scanf("%s %d",&a,&b);for(j=1;j<b;j++)printf(" ");printf("%c\n",a);if(a=='Z') a='A';e...原创 2019-03-25 08:58:01 · 1524 阅读 · 1 评论 -
链表练习
已知线性表中的元素以值递增有序排列,并以单链表作存储结构。试写一算法,删除表中所有大于x且小于y的元素(若表中存在这样的元素)同时释放被删除结点空间。#include<iostream> #include<list> using namespace std; int main() { list<int> s; ...原创 2019-03-26 10:28:44 · 653 阅读 · 0 评论 -
链表练习— 删除结点
对给定的单链表 L ,设计一个算法,删除 L 中值为 x 的结点的直接前驱结点。#include<iostream> #include<list> using namespace std; int main() { list<int> LA,LB; list<int>::iterator j,n; ...原创 2019-03-26 10:27:32 · 2404 阅读 · 2 评论 -
链表求交集
已知两个单链表 LA 和 LB 分别表示两个集合,其元素递增排序,设计算法求出 LA 和 LB 的交集 C ,要求 C 同样以元素递增的单链表形式存储。#include<iostream> #include<list> using namespace std; int main() { list<int> LA,LB,LC; ...原创 2019-03-26 10:26:19 · 2228 阅读 · 1 评论 -
回文字符串
有一种特殊形式的字符串,其正反序相同,被称为"回文字符串”。例如LeveL就是一个回文字符串。输入: 字符串输出: Yes或者No说明: 如输出Yes,说明输入的字符串是一个回文字符串 输出No,说明输入的字符串不是一个回文字符串#include<stdio.h>#includ...原创 2019-03-26 10:23:16 · 1147 阅读 · 0 评论 -
求解平方根
小明上来大学,学习了用求解平方根的迭代公式。其中:p 为 x 的近似平方根,e 是结果允许的误差。输入:x, e输出:p保留小数点后 8 位。#include<stdio.h>#include<math.h>double run(double x,double p,double e){if(p*p-x<e&&p*p...原创 2019-03-26 09:37:25 · 2625 阅读 · 2 评论 -
科学记数法
对于非常大或者非常小的数据,我们通常用科学记数法来表示。例如在科技文献和电脑中经常遇到的 2.3×106(计算机中的科学记数法表示为:2.3E6),或者 9.18×10-5(科学记树法表示:9.18E-5)这种类型的数据。输入: 用科学记数法表示的数据。即为符合C语言表示的科学记数法表示。输出: 该数据的双精度表示说明: 输入数据的精度不高于小数点后50位。...原创 2019-03-25 09:09:39 · 9566 阅读 · 5 评论 -
编码问题
设有一个整形数组 A[0..N-1];存放的元素为 0~N-1 (1<N<=10)之间的整数,且 A[i]≠A[j](i≠j)。例如,当N=6时,有:A=(4,3,0,5,1,2)。此时,数组A的编码定义如下: A[0]编码为0; A[i]编码为:在A[0],A[1],...,A[i-1]中比A[i]的值小的个数 (i=1,2,...,N-1) 例如上面数...原创 2019-03-25 09:07:48 · 847 阅读 · 0 评论