![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 75
hello-hebin
这个作者很懒,什么都没留下…
展开
-
案例练习:演讲比赛
选手编号 第 1 轮 选手抽签 选手比赛 查看比赛结果 第 2 轮 选手抽签 选手比赛 查看比赛结果 第 3 轮 选手抽签 选手比赛 查看比赛结果 实现思路: 需要把选手信息、选手得分信息、选手比赛抽签信息、选手的晋级信 息保存在容器中,需要涉及到各个容器的选型。当小组演讲完后,淘汰组内排名最后的三个选手,然后继 续下一个小组的比赛。比赛完毕,淘汰组内排名最后的三个选手,然 后继续下一个小组的比赛。比赛评分:10 个评委 打分,去除最低、最高分,求平均分每个选手演讲完由 10 个评委分别打分。原创 2024-06-18 13:17:01 · 650 阅读 · 0 评论 -
C++面向对象——运算符重载
当对象中包含动态分配内存空间的情况有可能出错,因为类的数据成员中包含指针,简单的赋值操作会使得两个对象中的指针成员指向同一个空间,运行时会发生错误,这时则需要用户自己定义重载的赋值运算符。单目运算符可以作为类的成员函数重载,也可以作为类的友元函数重载,作为成员函数重载是没有参数,而作为友元函数重载时有一个参数。根据本题的题意,要设计的字符串类String,应包含1个指向字符串的指针p_str的数据成员和以下的成员函数:==(4)由于友元函数破坏了类的封装性,所以重载单目运算符时一般采用成员函数的形式。原创 2024-05-05 16:04:15 · 948 阅读 · 0 评论 -
C++笔记
C++入门第一课:HelloWorldC++入门第二课:数据类型与变量C++入门第三课:类型转换与输入C++入门第四课:三大结构C++入门第五课:一维数组C++通讯录管理系统C++实现排序算法:桶排\选择\冒泡\插入\快速\归并模块化编程——函数C++面向对象——类与对象C++面向对象——继承、派生与多态C++面向对象——异常处理原创 2024-05-05 16:00:30 · 324 阅读 · 0 评论 -
C++面向对象——异常处理
(3)throw语句抛掷的异常由try语句块后的catch语句块捕获并处理,catch语句块可以有多个,通常每个catch语句块捕获一种类型的异常,捕获异常的类型由catch语句块参数类型所决定,catch块可以捕获其参数类型及其派生类型的异常。throw语句抛掷的异常的类型由throw后所跟的表达式值的类型所决定,如代码段中有多处要抛掷异常,应该用不同类型的操作数加以区别,类型相同而仅仅值不相同的操作数不能区别不同的异常。继续执行,而是在try语句块后寻找能捕获整型异常的catch语句块。原创 2024-05-05 15:52:27 · 699 阅读 · 0 评论 -
C++面向对象——继承、派生与多态
两个类之间语义级别的一种强依赖关系,比如我和我的朋友,这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的。C++提供虚基类(virtual base class )的方法,使得在间接继承共同基类时只保留一份成员(在内存中只有基类成员的一份拷贝),通过把基类继承声明为虚拟的,就只能继承基类的一份拷贝,从而消除歧义。当一个基类被继承为不同的派生类时,各派生类可以使用与基类成员相同的成员名,如果运行时使用同一成员名调用对象的成员,会调用哪个对象的成员?原创 2024-05-05 15:46:28 · 992 阅读 · 2 评论 -
C++面向对象——类与对象
*函数:类内声明、类外定义*/private: // 私有,仅类内可以访问// 固有属性,成员变量int age;public: // 公开,哪里都可以访问Person();// 无参构造函数的声明// 有参构造函数的声明// 复制构造函数的声明~Person();// 析构函数的声明// 提供get/set方法void show(){ // 成员函数,成员方法// 构造函数的类外实现Person::Person(){// 无参构造。原创 2024-04-17 10:01:13 · 964 阅读 · 0 评论 -
模块化编程——函数
/ 求两个数据的最小值,最大值// 函数声明:返回类型 函数名(形式参数列表);// 声明是为了告诉你,有这个东西// 函数调用:函数名(实际参数)return 0;// 函数定义:返回类型 函数名(形式参数列表){ ... }// 定义是实现该函数功能a:b);a:b);原创 2024-04-08 16:25:16 · 216 阅读 · 0 评论 -
VSCode使用教程
下载 Dev-C++:https://pc.qq.com/detail/16/detail_163136.html。需要安装编译环境MinGW:https://sourceforge.net/projects/mingw/VSCode官网:https://code.visualstudio.com/win+r,调出运行界面,输入cmd,调处Dos窗口(或者说控制台)鼠标右键此电脑,选择属性,点击高级系统设置,点击环境变量。在系统变量中找到Path,点击编辑:添加上述路径。原创 2024-02-21 10:15:38 · 1000 阅读 · 0 评论 -
编程语言的介绍
编程语言的介绍所谓的编程语言其实就是一种人机交互的工具,类似于我们生活中的中文,英语,日语等,只是面向的对象由人与人之间变成了人与机器。C语言介绍:1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以原创 2021-07-01 10:39:37 · 583 阅读 · 0 评论 -
OI造数据以及Lemon评测教程
OI造数据以及Lemon评测教程 - hebin前言所谓数据,就是我们对解决某个问题的程序正确与否进行判断的依据。不同的题目会考虑到时间和空间复杂度,所以需要对数据有严格要求,甚至部分数据只能人为创造。本教程是基于C/C++和Python的造数据教程,如果不会,请先再继续向后看,再去学习对应的知识点即可。并且在后文提供了软件Dev-C++ & Thonny(python集成ide) & Lemon的下载地址,Lemon教程在下载处就有。A+B最快入门的方式就是做一次题。所以这里原创 2021-07-01 10:00:28 · 2153 阅读 · 1 评论 -
python造数据,并使用lemon评测,快速入门
使用python造数据最快入门的方式就是做一次题。例:输入两个整数 a,b,输出它们的和,已知 0< a, b<1e+3python代码import randomimport osfor i in range(1,11): # [1.11) with open ("%d.in" % i,"w") as fout: a = random.randint(1,1000) b = random.randint(1,1000) fou原创 2020-11-19 15:53:47 · 926 阅读 · 1 评论 -
运算符,ASCII码表等常用编程资料
文章目录1. 常用的数据类型2. 运算符的优先级(从高到低)3. 常用字符与ASCII代码对照表1. 常用的数据类型数据类型类型标识符存储大小数据范围字符型char1B-2^8 ~ 2^8-1短整型short2B-2^15 ~ 2^15-1整型int4B-2^31 ~ 2^31-1单精度浮点数float4B-3.4E+38 ~ 3.4E+38双精度浮点数double8B-1.79E+308 ~ 1.79E+308长整原创 2020-10-27 14:24:11 · 1399 阅读 · 2 评论 -
C++造数据 和 对拍
C++造数据 和 对拍0. 准备题目吃早饭同学们每天早上都会晨练,但是每次运动后都会很饿,于是他们回去吃早饭,信奥班的同学们当然很有素质,他们都遵守规矩排队。每个同学都面向窗口,一共有 N 个同学。现在你想知道每个同学能够看到的前面的同学的个数和是多少。定义一个同学能够看到的人为在他前面且身高严格低于他的人,并且他的视线会被在他前面第一个身高大于等于他的人挡住。也就是说无论如何也无法看到再前面的人了。输入:N+1 行第一行一个正整数N表示同学的个数。以下 N 行分别表示从后到前(窗口)同学的身原创 2021-10-07 22:22:54 · 1131 阅读 · 0 评论 -
高精度加减乘除(只考虑正整数)
文章目录摘要高精度加法高精度减法高精度乘法高精度除法高精度/低精度高精度/高精度摘要本文主要对高精度的四则运算作说明,并封装成方法,以便于在下次使用时可以直接调用。虽然高精度的计算不同于普通运算,但是其运算的原则和规律任然相同。基本思想:将大数据拆分为小数据,对小数据进行四则运算,再判断进位借位。实现方式:将数据按位存储在数组中,至于是否倒序存储看运算符,再对数组中的数字进行等位运算,并将运算结果存储到字符串中,或者输出。本文涉及的高精度加减乘除的一些预先说明:四种方法封装成独立的方法,对外原创 2021-03-26 21:49:13 · 273 阅读 · 0 评论 -
C++实现排序算法:桶排\选择\冒泡\插入\快速\归并
桶排:划分多个范围相同的区间,每个子区间自排序,最后合并。其实就是记录每个数据出现的次数,按数据大小输出的同时对每种数据次数做减法,直到次数为0 ,才进行下一个数据的输出。#include<iostream>using namespace std;//BucketSortint main() { int arr[10] = {3,4,5,6,1,2,7,8,9,0}; int cmp[10] = {0}; //记录次数 for(int i=0; i<...原创 2021-01-18 23:37:58 · 174 阅读 · 0 评论 -
C++通讯录管理系统
效果图需要的知识C++基础知识(包括变量,运算符,顺序,分支,循环)数组函数指针结构体源码#include <iostream>using namespace std;#define MAX 1000 //最大联系人个数 struct Person { string name; string sex; int age; string tell; string addr;};struct Books { struct Person per[MAX]原创 2021-01-11 16:10:45 · 228 阅读 · 1 评论 -
DevC++的一些使用技巧
文章目录1. 新建项目和源文件2. 编辑中的一些特点3. 搜索的使用4. 视图5. 运行(run)与调试(Debug)6. 配置界面语言7. 代码格式化8. 代码编辑时,光标变成黑方块或者下划线9. 字体格式和大小的修改10. 语法高亮提示11. 代码插入预定义模块12. 新建源文件自动插入代码模板13. dev运行时无法输出: Hello World1. 新建项目和源文件新建项目就不说了,直接快速使用新建源文件吧!为什么说要使用新建源文件呢?因为新建项目后,我们说过一个项目中只能由一个main函数原创 2020-12-03 23:15:16 · 12996 阅读 · 2 评论 -
C++入门第五课:一维数组
文章目录一维数组-百科定义引用初始化全局变量和局部变量数组越界灵活运用数组下标一维数组-百科定义概念:相同数据类型的集合,即为数组。定义格式:int arr[10];解析:定义一个int 类型的数组,并为数组取名 arr , 数组元素个数为10;引用通过下标或者指针引用, 但是下标从0开始,所以最后一位下标 = 数组长度 - 1。那到底怎么使用呢?还是举例吧!定义:int arr[10];引用:arr[0], arr[1], arr[2] ... arr[9]初始化在数组定义的时候就原创 2020-11-25 15:04:47 · 348 阅读 · 0 评论 -
C++入门第四课:三大结构
文章目录1. 预习知识2. if3. for4. while1. 预习知识计算机编程三大结构:(1)顺序结构:从上至下,从左至右的执行程序 之前所学的程序都是顺序结构 (2)选择结构(分支结构):按条件选择执行某段程序 需要使用 if(flag) { } 来判断 flag 的真假, 若为真,着执行接下来 {} 里面的语句,否则不执行。 (3)循环结构:循环执行某段程序 有以下三种方式: a. for(int i=0; i<length; i++){ } b. w原创 2020-11-01 13:01:45 · 780 阅读 · 0 评论 -
C++入门第三课:类型转换与输入
文章目录1. 数据类型的转换2. 字符型和整型的转换3. 变量的输入1. 数据类型的转换自动类型转换自动类型转换遵守以下规则:在不同数据类型的混合运算中,编译器会隐式地进行数据类型转换,称为自动类型转换。自动类型转换遵守以下规则:(1)若参与运算的数据类型不同,则先转换成同一类型,然后进行运算。(2)转换按数据长度增加的方向进行,以保证精度不降低。例如int类型和long long类型运算时,先把int转换为long long后再运算。(3)在赋值运算中,赋值号两边的数据类型不一样时原创 2020-10-24 18:56:04 · 384 阅读 · 0 评论 -
C++入门第二课:数据类型与变量
文章目录1. 常用的数据类型2. 变量名3. 赋值语句4. 数学表达式1. 常用的数据类型数据类型类型标识符存储大小数据范围整型int4B−231 − 231−1 -2^{31} ~-~ 2^{31}-1 −231 − 231−1字符型char1B-128 ~ 127单精度浮点数float4B-3.4E+38 ~ 3.4E+38双精度浮点数double8B-1.79E+308 ~ 1.79E+30原创 2020-10-22 13:52:04 · 309 阅读 · 0 评论 -
C++入门第一课:HelloWorld
文章目录1. devC++的下载安装2. C++输出 Hello World3. 数学符号:+ - * / %4. 注释5. 知识点1. devC++的下载安装这里我们也提供一个下载链接:devC++软件下载也可以自己百度,打开浏览器,输入 :dev,搜索,发现第一个就是官网,但是考虑到英文问题,我们不选择这里下载,继续向下翻页然后我们看见了这样的链接,腾讯网页提供的dev下载链接点进链接发现腾讯软件中心,向下翻,看见有安全下载和普通下载,选择普通下载,直接下载dev的安装包;直接点击打原创 2020-10-16 19:13:28 · 1521 阅读 · 0 评论