C/C++
文章平均质量分 72
今晚的月色很美
TwcatL_tree
我家二猫爱爬树
展开
-
史上最全ASCII码对照表0-255(%d)
十进制代码 十六进制代码 MCS 字符或缩写 DEC 多国字符名 ASCII 控制字符 1 0 0 NUL 空字符 1 1 SOH 标题起始 (Ctrl/A) 2 2 STX 文本起始 (Ctrl/B) 3 3 ETX 文本结束 (Ctrl/C) 4 4 EOT 传输结束 (Ctrl/D) 5 5 ENQ 询问 (Ctrl/E) ...原创 2021-10-05 22:54:34 · 42789 阅读 · 0 评论 -
C++树详解
树(Tree)是n(n≥0)个结点的有限集。n=0时称为空树。在任意一颗非空树中:①有且仅有一个特定的称为根(Root)的结点;②当n>1时,其余结点可分为m(m>0)个互不相交的有限集T 1 {T}_{1}T12m,其中每一个集合本身又是一棵树,并且称为根的子树(Sub Tree)。int val;原创 2023-10-05 02:26:16 · 894 阅读 · 0 评论 -
VsCode配置c/c++环境
记住,文件目录一定要根据自己电脑的来设置!!!原创 2022-11-12 00:33:40 · 3014 阅读 · 0 评论 -
c语言和python区别
二者的缺点则互为对方占优的方面。C是静态语言在变量在使用前进行声明,而Python是动态语言在使用的时候可以直接使用不需要声明,C里面没有对象而Python里面是有对象。编译型的优点是“静态”,代码不能一行一行编译执行,必须作为整个工程来编译,这样便于类型检查,降低运行时错误率;1.C语言是编译型语言,经过编译后,生成机器码,然后再运行,执行速度快,不能跨平台,一般用于操作系统,驱动等底层开发。编译型和解释型,在编程时的最大区别是必不必要写一个入口函数,在C语言里是 main,而 Python 可以不写。原创 2022-10-27 10:11:38 · 2512 阅读 · 0 评论 -
十六进制和八进制的前缀
1、八进制数是一种逢八进一的计数体制,基数是8,用0~7表示,如077。2、八进制数以数字0开头。3、十六进制数是一种逢十六进一的计数体制,基数是16,用09,AF表示,如0xFF或0XFF。4、十六进制数以数字0和字母x的组合0x或0X开头。其中字母x是不区分大小写的,即0x与0X等价。Note:输出打印八进制数时 %o 这里是字母 oint a = 12; 把数 a 分别 以十进制,八进制,十六进制形式 输出打印printf("%d,%o,%x", a, a, a);//不显示数制前缀p原创 2021-05-29 22:00:51 · 11358 阅读 · 1 评论 -
均分纸牌(贪心)
【题目描述】有n堆纸牌,编号分别为 1,2,…, n。每堆上有若干张,但纸牌总数必为n的倍数。可以在任一堆上取若干张纸牌,然后移动。移牌规则为:在编号为1的堆上取的纸牌,只能移到编号为 2 的堆上;在编号为 n 的堆上取的纸牌,只能移到编号为n-1的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。例如 n=4,4堆纸牌数分别为: ① 9 ② 8 ③ 17 ④ 6移动3次可达到目的:从 ③ 取4张牌放到④(9 8 13 10)原创 2020-08-27 22:36:00 · 276 阅读 · 0 评论 -
洛谷P1317 低洼地
P1317 低洼地题目描述一组数,分别表示地平线的高度变化。高度值为整数,相邻高度用直线连接。找出并统计有多少个可能积水的低洼地?如图:地高变化为 0 1 0 2 1 2 0 0 2 0输入两行,第一行n,表示有n个数。第2行连续n个数表示地平线高度变化的数据,保证首尾为0。(3<=n<=10000,0<=高度<=1000)输出一个数,可能积水低洼地的数目。样例输入 Copy100 1 0 2 1 2 0 0 2 0 样例输出 Copy3 思路原创 2020-08-27 21:37:18 · 637 阅读 · 0 评论 -
LibreOJ10011 愤怒的牛 二分
题目链接题目描述原题来自:USACO 2005 Feb. Gold农夫约翰建造了一座有 n 间牛舍的小屋,牛舍排在一条直线上,第 i 间牛舍在 xi 的位置,但是约翰的 m 头牛对小屋很不满意,因此经常互相攻击。约翰为了防止牛之间互相伤害,因此决定把每头牛都放在离其它牛尽可能远的牛舍。也就是要最大化最近的两头牛之间的距离。牛们并不喜欢这种布局,而且几头牛放在一个隔间里,它们就要发生争斗。为了不让牛互相伤害。John 决定自己给牛分配隔间,使任意两头牛之间的最小距离尽可能的大,那么,这个最大的最小距离原创 2020-08-27 21:15:34 · 199 阅读 · 0 评论 -
C++中的赋值运算符重载函数(operator=)
本文主要介绍C++中的赋值运算符重载函数(operator=)的相关知识。1. 概述1.1 why首先介绍为什么要对赋值运算符“=”进行重载。某些情况下,当我们编写一个类的时候,,并不需要为该类重载“=”运算符,因为编译系统为每个类提供了默认的赋值运算符“=”,使用这个默认的赋值运算符操作类对象时,该运算符会把这个类的所有数据成员都进行一次赋值操作。例如有如下类:class A{public: int a...转载 2020-08-25 11:26:40 · 460 阅读 · 0 评论 -
C++的重载操作符(operator)介绍
本文主要介绍C++中的重载操作符(operator)的相关知识。1. 概述 1.1 whatoperator 是C++的一个关键字,它和运算符(如=)一起使用,表示一个运算符重载函数,在理解时可将operator和运算符(如operator=)视为一个函数名。使用operator重载运算符,是C++扩展运算符功能的方法。使用operator扩展运算符功能的原因如下: 使重...转载 2020-08-25 11:25:34 · 673 阅读 · 0 评论 -
c++程序设计基础(第五版)(上) 习题与解答
习题与解答C++程序设计基础(第5版)(上)习题与解答第1章练习题同步练习1.1一、选择题1.一个最简单的C++程序,可以只有一个( )。(A)库函数 (B)自定义函数 (C)main函数 (D)空函数2.函数名是( ),用于识别和调用函数。(A)关键字 (B)标识符 (C)常数 (D)语句3.用C++语言编写的源程序要成为目标程序必须要经过( )。(A)解释 (B)汇编 (C)编辑 (D)编译4.C++程序中的简单语句必须以( )结束。原创 2020-08-13 19:43:40 · 14438 阅读 · 0 评论 -
STL小结
STL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list, vector,set,map等,STL也是算法和其它一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。是C++标准库的一个重要组成部分,它由Stepanov and Lee等人最先开发,它是与C++几乎同...原创 2020-07-01 10:47:09 · 1094 阅读 · 0 评论 -
没用过这些 VSCode 插件?怪不得写代码头疼
1. Codelf变量命名神器2、View In Browser在浏览器里面预览正在编辑的html文件3、Color Highlight高亮显示样式颜色4、Bracket Pair Colorizer成对的彩色括号,让括号拥有独立的颜色,便于区分5、Highlight Matching Tag高亮显示对应的HTML标签以及标识出对应的各种括号6、Path Intellisense在编辑器中输入路径的时候,能自动补全7、Prettier - Code form原创 2020-06-30 20:04:16 · 295 阅读 · 0 评论 -
c语言入门这一篇就够了-学习笔记
内容来自慕课网。C语言入门 -> Linux C语言编程基本原理与实践 -> Linux C语言指针与内存 -> Linux C语言结构体https://www.imooc.com/course/...c语言入门C语言一经出现就以其功能丰富、表达能力强、灵活方便、应用面广等特点迅速在全世界普及和推广。C语言不但执行效率高而且可移植性好,可以用来开发应用软件、驱动、操作系统等。C语言也是其它众多高级语言的鼻祖语言,所以说学习C语言是进入编程世界的必修课。hello,world#原创 2020-06-20 22:09:19 · 2205 阅读 · 3 评论 -
400+条实用C/C++框架、库、工具整理 ,你能想到的都在这里了
正文: 超级值得收藏的C/C++资料宝库,汇总了 400+ 条 C++ 框架、库和工具 。内容包括C/C++ 各个领域 : 标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等。在此进行整理分享,如有补充,欢迎在下方评论区留言~另附: 值得学习17个C/C++ 超经典开源项目,面试必备目录库和框架标准库框架人工智能异步事件循环音频生态学压缩并发性容器密码学数据库调试游戏引擎图形用户界面图形图像处原创 2020-06-20 11:42:22 · 1464 阅读 · 1 评论 -
超级好用的C++万能头文件
#include<bits/stdc++.h>包含了目前c++所包含的所有头文件对比:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int main(){return 0;}可以直接转化为:#include<bits/std原创 2020-06-20 11:41:07 · 707 阅读 · 0 评论 -
如何优雅地利用C++编程从1乘到20
数学家版本:#include <iostream>#include <cmath>int main(){ std::cout << std::tgamma(20 + 1) << std::endl;}语言学家版本:#include <iostream>#include <utility>template<std::size_t...I> constexpr auto foo(std::index原创 2020-06-20 11:39:27 · 649 阅读 · 0 评论 -
c++课程设计具有简单功能的通讯录管理系统
通讯录管理系统手机通讯录中的联系人的信息既可以存储在手机中,也可以存储在手机卡中,也可以同时存储在两个位置上(每个位置上的存储容量为1000,即手机卡中或手机上最多只能存储1000个联系人)。存储在手机卡的联系人的信息只包含用户名和电话号码两项信息。存储在手机上的联系人的信息除了上面提到的两项信息外,还包含籍贯,QQ号等信息。根据通用的手机通讯录的使用方式,采用OOP(Object Oriented Programming,面向对象编程)方法编写一个手机通讯录管理。要求:1.创建文本文件,记录联系人原创 2020-06-15 20:36:03 · 2695 阅读 · 0 评论 -
C++8种常见类类型
C++8种常见类类型前言大部分面向对象开发工作中都应用了以下部分或者全部的基本类别的类:1、具体类(concrete class)2、抽象类(abstract class)3、接口类(interface class)4、节点类(node class)5、支持类(support class)6、域类(domain class)7、应用类(utility class)8、集合和容器类(collection and container class)这些类并不是特定的语言结构,而是用于实现逻辑原创 2020-06-13 23:30:49 · 4673 阅读 · 1 评论 -
运算符重载之何时重载为成员函数?何时重载为友元函数?
重载为成员函数:一般情况下,当一元运算符的操作数,或者二元运算符的左操作数是该类的一个对象时 。函数原型为:类名&类名::operator运算符(变量表)例如:用重载函数实现字符串的连接(重载运算符“+”)在这里插入代码片#include “pch.h”#include#includeusing namespace std;class S{ public:S(){str = ‘\0’; len = 0; //调用构造函数给变量置初值}S(const charpstr)原创 2020-06-12 21:14:36 · 929 阅读 · 0 评论 -
C++实例员工工资系统
此章节学习了虚函数和动态联边用抽象类实现一下员工工资的简易系统代码如下:#include<iostream.h> #include<string.h> #include<assert.h> #include<iomanip.h> class employee{public:employee(const long, const char*); virtual ~employee();const char*getname()const;原创 2020-05-12 23:03:49 · 593 阅读 · 0 评论 -
C++实例员工信息
假设某销售公司有一般员工、销售员工和销售经理。月工资的计算办法是:一般员工月薪=基本工资;销售员工月薪=基本工资+销售额提成率;销售经理月薪=基本工资+职务工资+销售额提成率。编写程序,定义一个表示一般员工的基类Employee,它包含三个表示员工基本信息的数据成员:编号number、姓名name和基本工资basicSalary。由Employee类派生销售员工Salesman类,Sa...原创 2020-05-03 10:59:09 · 1504 阅读 · 0 评论 -
C++实例会员管理程序
设计快捷店会员的简单管理程序。基本要求如下:(1)定义人民币RMB类,实现人民币的基本运算和显示。(2)定义会员member类,表示会员的基本信息,包括:编号(按建立会员的顺序自动生成),姓名,密码,电话。提供输入、输出信息等功能。(3)由RMB类和member类共同派生一个会员卡memberCar类,提供新建会员、充值、消费和查询余额等功能。(4)main函数定义一个memberCar类...原创 2020-04-24 20:16:25 · 3428 阅读 · 0 评论 -
C++面向对象实例员工工资
假设某销售公司有一般员工,销售员工和销售经理。月工资计算办法:一般员工月薪=基本工资销售员工月薪=基本工资+销售额*提成率销售经理月薪=基本工资+职务工资+销售额提成率编写程序,定义一个表示基本员工的基类Employee,他包含三个表示员工基本信息的成员:编号number,姓名name,和基本工资basicSalary。由Employee类派生销售员工Salasman类,Salasma...原创 2020-04-22 20:27:25 · 2338 阅读 · 0 评论 -
double &operator[](int i)与 double operator[](int i)const区别
double &operator[](int i); double operator[](int i)const;要操作数组中的元素当然是第一个。要给一个变量赋值。就是第二个了。 函数末尾加const表示该函数不修改类中的成员变量,而返回类型处加&,是为了直接返回对象本身,在这个例子中,通过返回double &可以使函数做左值。所以double operat...原创 2020-04-14 18:15:22 · 1008 阅读 · 0 评论 -
C++课本的练习题及答案(第八章)
第8章练习题同步练习8.11.一个大的应用程序,通常由多个类构成,类与类之间互相协同工作, 它们之间有三种主要关系。下列不属于类之间关系的是( )。(A)gets-a ...原创 2020-04-07 17:31:19 · 5932 阅读 · 1 评论 -
C++课本的练习题及答案(第七章)
第7章练习题同步练习7.1一、选择题1.在下列运算符中,不能重载的是( )。(A)! (B)sizeof &n...原创 2020-04-07 17:30:26 · 4566 阅读 · 0 评论 -
C++课本的练习题及答案(第六章)
第六章练习题 一、选择题1.下列类的定义中正确的是( )。(A)class a{int x=0;int y=1;} (B)class b{intx=0;...原创 2020-04-07 17:29:42 · 5031 阅读 · 1 评论 -
C++课本的练习题及答案(第五章)
第五章练习题 一、选择题1.语句 cout<<(1&2)<<","<<(1&&2)<<endl; 的输出结果是( )。(A)0, 0 (B)0, 1&nb...原创 2020-04-07 17:28:13 · 3412 阅读 · 0 评论 -
C++课本的练习题及答案(第四章)
第4章练习题同步练习4.1一、选择题1.有数组定义 double d[10]; 以下叙述不正确的是( )。(A)数组d有10个元素 ...原创 2020-04-07 17:27:16 · 6610 阅读 · 0 评论 -
辗转相除法__约分
#include<iostream>using namespace std;int main(){ int temp1; int temp2; cin>>temp1>>temp2; int a=temp1; int b=temp2; while(b!=0) { ...原创 2019-11-12 23:09:58 · 1264 阅读 · 0 评论 -
C++中substr函数的用法
#include<string>#include<iostream>using namespace std;int main(){ string s("12345asdf"); string a = s.substr(0,5); //获得字符串s中从第0位开始的长度为5的字符串 cout << a << endl;}...原创 2019-11-12 09:17:34 · 141 阅读 · 0 评论 -
C++ string.find()函数
string类的查找函数:int find(char c, int pos = 0) const;//从pos开始查找字符c在当前字符串的位置int find(const char *s, int pos = 0) const;//从pos开始查找字符串s在当前串中的位置int find(const char *s, int pos, int n) const;//从pos开始查找字符串s中...原创 2019-11-12 09:06:53 · 672 阅读 · 0 评论 -
小白鼠排队
Description有N只小白鼠(1<N<100),每只小白鼠头上戴着一顶有颜色的帽子。现在称出了每只小白鼠的重量,要求按照小白鼠重量从大到小的顺序输出它们头上帽子的颜色。帽子的颜色用“red”,“blue”等字符串来表示。不同的小白鼠可以戴相同颜色的帽子。假设所有小白鼠的重量都是一个整数。Main Goal:结构体练习Input输入第一行为一个整数N,表示小白鼠的数目。下面有N行,...原创 2019-11-06 20:30:52 · 220 阅读 · 0 评论 -
C语言结构体(struct)常见使用方法
注意:盗版是不会得到修正和更新的! 今天复习一下struct,顺便挖掘一下以前没注意的小细节:基本定义:结构体,通俗讲就像是打包封装,把一些有共同特征(比如同属于某一类事物的属性,往往是某种业务相关属性的聚合)的变量封装在内部,通过一定方法访问修改内部变量。(因为C++和C有共通之处,但是在...转载 2019-11-06 20:22:07 · 340 阅读 · 0 评论 -
C++ STL__queue 的使用方法
queue 模板类的定义在头文件中。与stack 模板类很相似,queue 模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque 类型。定义queue 对象的示例代码如下:queue q1;queue q2;queue 的基本操作有:入队,如例:q.push(x); 将x 接到队列的末端。出队,如例:q.pop(); 弹出队列...原创 2019-11-05 09:23:45 · 197 阅读 · 0 评论 -
C++__万能头文件bits/stdc++.h的优缺点
文章目录bits/stdc++的缺点bits/stdc++的优点在编程竞赛中,我们常见一个头文件:#include <bits/stdc++.h>发现它是部分C++中支持的一个几乎万能的头文件,包含所有的可用到的C++库函数,如 <istream><ostream><stack><queue>该头文件的详细内容如下:// C+...原创 2019-11-05 09:09:15 · 2610 阅读 · 0 评论 -
C++__return 0是什么意思?
return 0 代表程序正常退出。return是C++预定义的语句,它提供了终止函数执行的一种方式。当return语句提供了一个值时,这个值就成为函数的返回值。return语句用来结束循环,或返回一个函数的值。1、return 0,说明程序正常退出,返回到主程序继续往下执行。2、return 1,说明程序异常退出,返回主调函数来处理,继续往下执行。return 0 或 return 1 ...原创 2019-11-02 00:02:30 · 14387 阅读 · 1 评论 -
C++__#include <cstdio>有什么用?
cstdio是将stdio.h的内容用C++头文件的形式表示出来。stdio.h是C标准函数库中的头文件,即:standard buffered input&output。提供基本的文字的输入输出流操作(包括屏幕和文件等)。由于C语言并没有提供专用于文字输入输出的关键字,所以该库是最普遍的C语言程序加载库。cstdio 和 stdio.h是有差别的,并不是同样的文件。stdio.h是以...原创 2019-11-01 23:47:15 · 10013 阅读 · 0 评论 -
C++基础----C++ 布尔类型(bool)及BOOL和bool的区别
文章目录C语言中有bool类型吗?bool类型bool类型变量默认初始化值C++与VC++的区别bool与BOOL的区别C语言中有bool类型吗?C语言里面是没有bool(布尔)类型的,C++里面才有,这就是说,在C++里面使用bool类型是没有问题的。bool类型有只有两个值:true =1 、false=0。但是,C99标准里面,又定义了bool类型变量。这时,只要引入头文件 <s...原创 2019-11-01 23:13:40 · 2782 阅读 · 0 评论