黑马程序员课程笔记----c++基础入门

c++基础入门

1 c++初识

1.1 第一个c++程序

1.代码规范:
在这里插入图片描述

1.2 注释

1.单行注释 // ,通常再语句的末尾或代码的上方,对该行代码说明
2.多行注释 /* */ ,通常在带啊吗的上方,对该段代码做整体说明
3.注释:方便自己以后或别人可以看懂代码
4.
在这里插入图片描述

1.3 变量和常量

1.3.1 变量在这里插入图片描述
1.3.2 常量

1.c++定义常量两种方式:
1)#define宏常量:#define 常量名 常量值 (通常在文件上方定义,表示一个常量)(无;)
2)const修饰的变量:const 数据类型 常量名=常量值 (通常在变量定义前加关键字const,修饰该变量为常量,不可修改)

1.4 关键字

1.关键字:c++中预先保留的单词(标识符)—在定义变量时,不要用得到关键字

1.5 标识符命名规则

1.在这里插入图片描述

2.见名知意!

2 数字类型

2.1 整型

在这里插入图片描述
2.
在这里插入图片描述

2.2 sizeof关键字

1.长度指的是字节长度,1字节=8比特
在这里插入图片描述
在这里插入图片描述

2.3 实型(浮点型)

1.在这里插入图片描述
2.在这里插入图片描述
3.默认情况下,输出一个小数,会显示6位有效数字
在这里插入图片描述
4.
在这里插入图片描述

2.4 字符型

1.在这里插入图片描述
2.
在这里插入图片描述

2.5 转义字符

在这里插入图片描述
2.
在这里插入图片描述

3.在这里插入图片描述在这里插入图片描述

2.6 字符串类型

1.在这里插入图片描述

2.如果要用到关键字string需要引用string的头文件

2.5 布尔类型

1.在这里插入图片描述
2.C++中,其实只要是非0都代表真

2.6 数据的输入

3 运算符

3.1 算数运算符

3.1.1 加减乘除运算

1.”/”:除法运算,整数相除向下取整,小数也可以相除得到整数或小数

3.1.2 取模运算

1.“%”:取模(求余),注意它是基于除法运算的,所以取模的值(分母)不可以是0,而且两个小数不可以做取模运算,只有整型变量可以进行取模运算

3.1.3 递增递减

1.前置先改变变量值再计算表达式,后置相反。

3.2 赋值运算符

1.在这里插入图片描述

3.3 比较运算符

3.4 逻辑运算符

3.4.1 非

1.在这里插入图片描述

3.4.2 与
3.4.3 或

4 程序流程结构

4.1 选择结构

4.1.1 单行if语句

1.在这里插入图片描述
2.
在这里插入图片描述

4.1.2 多行if语句

在这里插入图片描述

4.1.3 多条件if语句

1.在这里插入图片描述

4.1.4 嵌套if语句

1.在这里插入图片描述在这里插入图片描述

4.1.5 案例 三目运算符

1.注意:
1)其格式,由三个表达式(三目),“?”,“:”组成
2)可以判断完后执行表达式

2.
在这里插入图片描述

4.1.6 switch语句

在这里插入图片描述在这里插入图片描述
2.
在这里插入图片描述
3.
在这里插入图片描述

4.2 循环结构

4.2.1 while语句

1.注意:在写循环时一定要避免死循环的出现。

4.2.2 案例 猜数字

在这里插入图片描述
2.注意一下随机数如何生成,需要添加随机数种子"sarnd(time(0))"(作用是利用当前系统时间生成随机数,防止每次随机数都一样,这里time系统时间要加上time头文件),rand()%100+1(rand后面跟着括号)。

4.2.3 do-while语句

1.在这里插入图片描述
在这里插入图片描述
2.
在这里插入图片描述

4.2.4 案例 水仙花数

在这里插入图片描述
2.特别注意打代码时符号^不是次方的意思!!!平方需要通过连乘达到
3.注意:while()填的是可以继续运行的条件while后面有”;”
4.获取最低位用“%10”,获取最高位用“/”,获取中间位先用“/”将想要的位拉到最低位再用“%10”
在这里插入图片描述
5.
在这里插入图片描述

4.2.5 for循环

1.在这里插入图片描述

4.2.6 案例 敲桌子

在这里插入图片描述

4.2.7 嵌套循环

1.在这里插入图片描述在这里插入图片描述

4.2.8 嵌套循环案例 乘法口诀表

1.在这里插入图片描述
在这里插入图片描述

2.注意:有时候可视化结果可以更好地找到规律(画图)

4.3 跳转语句

4.3.1 break语句

1.在这里插入图片描述

4.3.2 continue语句

1.可以筛选符合条件的执行循环语句,如输出奇数的例子

在这里插入图片描述在这里插入图片描述

4.3.3 goto语句

1.在这里插入图片描述
在这里插入图片描述
2.了解即可,不推荐自己去写因为会使结构很混乱

5 数组

5.1 一维数组

5.1.1 一维数组定义方式

1.在这里插入图片描述在这里插入图片描述

在这里插入图片描述

5.1.2 数组名

在这里插入图片描述在这里插入图片描述

5.1.3 案例 五只小猪称体重

1.在这里插入图片描述在这里插入图片描述
2.数组元素从0开始!!!
3.养成给变量设初始值的习惯

5.1.4 案例 数组元素逆置

1.在这里插入图片描述在这里插入图片描述
在这里插入图片描述

5.1.5 冒泡排序

1.在这里插入图片描述
2.冒泡排序:其实就是每次找到一个最大值
3.在这里插入图片描述
4.在这里插入图片描述

5.2 二维数组

5.2.1 二维数组定义方式

1.在这里插入图片描述
在这里插入图片描述

5.2.2 二维数组数组名

1.在这里插入图片描述在这里插入图片描述在这里插入图片描述
2.sizeof得到的内存大小单位是字节

5.2.3 案例 考试成绩统计

1.在这里插入图片描述在这里插入图片描述在这里插入图片描述

6 函数

6.1 函数的定义

1.在这里插入图片描述

6.2 函数的调用

6.3 值传递

1.在这里插入图片描述

6.4 常见的样式

1.在这里插入图片描述

6.5 函数的声明

1.函数声明可以多次,但函数定义只能有一次
在这里插入图片描述在这里插入图片描述

6.6 函数的分文件编写

1.在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

7 指针

7.1 指针的定义和使用

1.在这里插入图片描述

7.2 指针所占空间

1.在32位操作系统下,占用4个字节空间,64位下占用8个字节空间
在这里插入图片描述在这里插入图片描述在这里插入图片描述

7.3 空指针

1.在这里插入图片描述

在这里插入图片描述
2.
在这里插入图片描述

7.4 野指针

在这里插入图片描述

在这里插入图片描述2.在这里插入图片描述

7.5 const修饰的指针(命名:const(常量),*(指针);const *(不可以这样修改:*p=10),*const p(不可以这样修改p=&b))

1.const后面紧接的东西是不可修改的
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

7.6 指针和数组

在这里插入图片描述

2.在这里插入图片描述
3.
在这里插入图片描述

7.7 指针和函数

1.在这里插入图片描述
2.
在这里插入图片描述

7.8 指针配合数组和函数案例

1.在这里插入图片描述
2.在这里插入图片描述

8 结构体

8.1 结构体的定义和使用

1.在这里插入图片描述
2.在这里插入图片描述
3.在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
4.注意一般第三种不建议用,因为可能后面再用到该变量时别人不知道这个变量哪里来的

8.2 结构体数组

1.在这里插入图片描述在这里插入图片描述在这里插入图片描述

8.3 结构体指针

1.在这里插入图片描述

8.4 结构体嵌套结构体

1.在这里插入图片描述在这里插入图片描述

8.5 结构体做函数参数

在这里插入图片描述
2.在这里插入图片描述

8.6 结构体const的使用场景

1.在这里插入图片描述
2.值传递需要拷贝数据会占用很多的空间
3.在这里插入图片描述

8.6 结构体案例1

1.在这里插入图片描述在这里插入图片描述在这里插入图片描述
2.为什么出错呢,难道这应该是定义的时候就定义好才行?
在这里插入图片描述

8.7 结构体案例2

1.在这里插入图片描述

9 通讯录管理系统

9.1 系统功能介绍及展示

1.在这里插入图片描述

9.2 创建项目

9.3 菜单功能

1.在这里插入图片描述

9.3 退出功能实现

1.在这里插入图片描述
2.利用while(true)让系统可以在还没退出/没输入正确的情况下一直被使用/进行再次输入

9.4 添加联系人 结构体设计

1.在这里插入图片描述

9.5 添加联系人 功能实现

1.清屏操作“system(“cls”)"在这里插入图片描述

9.6 显示联系人

在这里插入图片描述

2.巧用三目运算符
在这里插入图片描述

9.7 删除联系人 检测联系人是否存在

1.在这里插入图片描述在这里插入图片描述

9.8 删除联系人 功能实现

1.在这里插入图片描述在这里插入图片描述
2.函数(考虑意外情况,主体功能实现,友好提示,显示美观)

9.9 查找联系人

1.在这里插入图片描述

9.10 修改联系人

1.在这里插入图片描述

9.11 清空联系人

1.在这里插入图片描述
2.在这里插入图片描述3.
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值