学习笔记c++
文章平均质量分 79
肖爹是好人!!!!
浅度断墨
鞋又鞋不费,叮又叮不懂,洗了涮了
展开
-
ch9 模 板
一、冒泡排序函数模板主程序测试整形数组、字符数组、字符串数组的排序(不使用STL)//本程序实现从大到小排序#include<iostream>#include<string>using namespace std;template<typename T>void BubbleSort(T a[], int n) { for (int i = 1; i < n; i++) { int temp = i; T tmp; for (in原创 2022-04-28 11:11:25 · 161 阅读 · 0 评论 -
Homework12_ch8 多态——运算符重载(2)
人民币的排序题目描述如下:设计人民币类,类设计和运算符重载参看homework11. 增加重载比较运算符:小于 <、大于 >、小于等于 <=、大于等于>= 、不等于 !=、等于 == . 功能说明:在主程序中:有10个人民币:+ 1 2 3, + 22 33 44,+ 0 0 0,- 100 0 2, + 77 6 0,+ 207 8 9,- 60 56 3,+ 88 8 8, -203 45 3,+ 95 6 6 这些数据是原始数据,有些需要格式化(进位原创 2022-04-28 11:08:19 · 162 阅读 · 0 评论 -
Homework11_ch8(2) 多态——运算符重载(1)
人民币类---运算符重载题目描述如下:设计人民币类,数据成员包含正负标志位、元、角、分 ,设计构造函数、重载+、-、前置自增、后置自增、前置自减、后置自减、输出流插入运算符<<、输入流提取运算符>> . 其中前置自减、后置自减、<<和>>重载成友元函数。 自增表示增加1分钱。自减表示减少1分钱。加减法和构造时的进位要考虑。 编写主函数测试之。功能说明:所有的人民币的输入和输出都要使用重载的运算符<<...原创 2022-04-28 11:03:29 · 304 阅读 · 0 评论 -
Homework10_ch8 多态(1) -- 虚函数
关于构造矩形的说明:矩形由对角顶点构造,矩形的2条邻边和坐标轴分别平行。(二)抽象基类的设计:class Shape{public: Shape(){} virtual ~Shape(){} void GetInfo() { cout<<”这是一个 ”;Show(); cout <<endl<<”它的面积是”<<Area()<<en...原创 2022-04-28 11:01:16 · 136 阅读 · 0 评论 -
Homework9_ch7 继承和派生(2)
一、时钟-闹钟类在时钟类Clock的基础上派生闹钟类AlarmClock(1)时钟类ClockClock类设计如下,请实现成员函数。class Clock{ private: int Hour, Minute, Second; //24小时制的时间数据public: Clock(int hour, int minute, int second); void ShowTime(); ...原创 2022-04-28 10:59:02 · 482 阅读 · 0 评论 -
Homework7_ch5 数据的共享与保护(2)——friend
1. 友元函数设计1.1 程序描述模拟电力公司统计用户用电量。请设计一个类FamliyElecPower描述每户人家一年的用电情况,一年的12个月的每月电量都要记录。设计函数CalTotalEPower,计算每户一年的总电量;函数CalAveEPower计算每户的每月平均用电量。函数CalTotalEPower和函数CalAveEPower是类FamliyElecPower的友元函数。主程序中创建1户人家,输入这户人家1年12个月的用电量,然后调用函数CalTotalEPower和函数CalAveE原创 2022-04-28 10:56:44 · 190 阅读 · 1 评论 -
Homework6_ch5 数据的共享与保护(1)——static
超市经销大米,成袋购入,成袋售出。每袋大米的质量有2.5公斤的、有5公斤、有10公斤的等,超市记录所有大米的总质量。设计Rice类,包含私有数据成员: 质量Weight和产地Place;还包含私有静态数据成员: 总质量TotalWeight . Rice类的公有成员函数:构造函数 Rice(double weight=0, string place=”XXX”); 构造新对象的同时总质量要增加; 拷贝构造函数 Rice(const Rice&); 拷贝构造新对象的同时总质量要增加; .原创 2022-04-28 10:51:44 · 409 阅读 · 0 评论 -
Homework5_ch4 类和对象(3)
一个表示分数的数据类型,它能以2/3这样的格式输出或输入,能完成分数的加、减、乘、除等运算。 一个Fraction分数须满足以下两个条件: ①分母永远为正,分数的符号用分子表示; ②分子分母互质,即总表示为最简分数。 说明:数据成员: fraction通过两个私有数据成员int 型num和den分别保存分子和分母;成员函数:(a)构造函数Fraction(int n=0,int d=1);(b) Standardize函数进行标准化处理,例如:2/4 = 1/2 , 2/-原创 2022-04-28 10:50:08 · 190 阅读 · 0 评论 -
Homework4_ch4 类和对象(2)
定义、实现并测试Number类。定义类的私有数据成员n1和n2为两个数字。定义缺省形参值(0)的有参构造函数,赋予n1和n2初始值。定义加addition、减subtration、乘multiplication、除division等公有成员函数分别对两个成员变量执行加、减、乘、除的运算。在主程序中创建Number类的对象调用各个方法并显示计算结果。//number.h#pragma once#ifndef NUMBER_H#define NUMBER_Hclass Number原创 2022-04-28 10:37:08 · 261 阅读 · 2 评论 -
Homework8_ch7 继承和派生(1)
继承和派生类的设计点类(Point),派生圆类(Circle)和矩形类(Rectangle)。如下图:点类中:私有数据成员int x 和 int y ,分别表示横坐标和纵坐标; 构造函数Point(),将x和y都初始化为0 ; 构造函数Point(int xx,int yy),将x和y分别初始化为xx和yy的值 ; 析构函数~Point() ;移动函数void Move(int xOff,int yOff), 将x沿横轴移动xOff个...原创 2022-04-28 10:30:00 · 381 阅读 · 0 评论 -
AtCoder Beginner Contest 248 E - K-colinear Line
传送门:E - K-colinear Line (atcoder.jp)题意:给N个点,找出线上有K个点及以上的线有几条?看了一下蒋的思路:先算出所有线,记录一下(注意符号,和表示同一条线)即可,然后再用每条线遍历每个点看哪些点在线上,最后复杂度。很好想,但是我的方法可以(自豪哼哼,虽然大佬肯定不屑于纠结这些没啥用的)同样是的计算所有线,记录每条线出现次数,出现次数就表示这条线上面的点有K个以上。代码如下:#include<iostream>#include<c原创 2022-04-17 16:24:57 · 317 阅读 · 0 评论 -
2021-2022 ICPC, NERC, Northern Eurasia Onsite Problem-L. Labyrinth
可能是今年我写的最漂亮的一题(毕竟蒟蒻传送门:Problem - L - Codeforces (Unofficial mirror site, accelerated for Chinese users)题意:有向图,两个人从出发点开始从两条不同的路走到终点,出发点给定,终点任选(除出发点外)。注意:可能成环!可能非连通图!(写着写着把成环忘了,RE两发血亏TAT)/*样例输入5 5 11 22 31 44 33 5输出Possible31 2 331 4 3原创 2022-04-14 11:00:22 · 878 阅读 · 0 评论 -
Educational Codeforces Round 126 (Rated for Div. 2) B. Getting Zero
现在就是后悔,非常后悔。被教育赛深深地教育了。传送门:Problem - B - Codeforces题意:最少操作使每个数变得%32768为0,两种操作:(1)+1(2)*2很快看出特殊数很兴奋就开搞了,只要把待操作的数最低位的1推到第15位,或者保证这个数从第一位开始连续15个零,最多操作15次,连乘15次。这不直接dp吗?(因为当时没有发现只要推数时*2比加数贡献大就一直做乘法即可下简单说明为啥推数时*2比加数贡献大(或操作数少)就一直做乘法即可我们把110原创 2022-04-10 22:10:47 · 442 阅读 · 0 评论 -
数据结构学习
不学不行啊原创 2021-09-16 13:36:57 · 340 阅读 · 0 评论