重构:不增加代码功能,对代码结构的调整和优化,为了维护和拓展
1. 流程控制
- 顺序结构
- 分支结构(判断\选择)
- 循环结构
2. 分支
- if
- if else (三元运算替代)
- if else if else if else (多路分支)
- switch-case 多路分支,有限,简洁
3. 数组
- 一个标识符,存储多个值(大小是不可变)
- 字符串string是字符数组
4. 循环结构
- for: 循环次数确定
- while: 循环次数不确定,先判断在执行
- do-while: 循环次数不确定,先执行再判断
// 1 初始化
// 2 循环条件
// 3 步长
// 4 循环体
for(1; 2; 3){
// 4 循环体
}
5. 位运算
数值转为二进制进行运算,效率更高
- & 与:两个1得1,否则得0
- | 或:只有一个1就得1,即两个0才得0
- ^ 异或:不一样(相异)得1,相同则得0
- ~ 按位取反:0变1,1变0 (按位取反操作是基于补码表示形式的。因此,在操作有符号整数时,需要了解其补码表示形式。补码的计算规则是将原码取反后加1。这是因为补码表示法可以更好地处理负数和零)
- >> 右移:除以 2^n (放大、缩小2^n使用位移,效率高)
- << 左移:乘以 2^n
6. 函数
封装:开放闭合原则
6.1 基本概念
命名的代码块,预定义的、可复用的功能单元
函数是C程序的基本单元,C程序由若干个函数组成
函数/方法
函数的作用:
1. 封装
2. 模块化
3. 可复用
函数的大小:100行以内
6.2 定义
- 构成:函数名、参数列表、函数体、返回值类型
6.3 函数递归
一个函数调用自身
部分递归操作,可以使用循环实现(替代);代码更简洁
而部分递归无法使用循环实现:文件遍历,图,汉诺塔
标签:函数,递归,补码,取反,C语言,小白,初识,else,循环 From: https://blog.csdn.net/2301_81729384/article/details/140446359