我的第二堂C++课程笔记:进制转换与函数使用
今天是我在海南大学计科专业上第二堂C++课程,我学习了进制转换以及如何自己写函数。把今天的学习内容整理一下,方便自己复习,也希望对别人有帮助。
一、进制转换
在学习进制转换的时候,我发现老师讲的“口诀式记忆法”特别实用,我把它总结如下:
二进制与八进制/十六进制
二进制转八进制
口诀:“三三分”
原理:整数部分从右往左每三位一组,小数部分从小数点向右每三位一组,不够补0。
例子:- 1101 → 分组 001 101 → 八进制 15
- 小数例:10.0111 → 分组 010 . 011 100 → 八进制 2.34
二进制转十六进制
口诀:“四四分”
原理与二转八类似,但每组四位,小数部分同样补齐四位即可。
十进制与其他进制
十进制转其他进制(整数部分)
口诀:“不断除进制,余数倒读”
方法:用十进制数除以要转化的进制数,不断取余数,最后把余数倒着读就是答案。
例子:十进制 666 → 八进制:
666 ÷ 8 = 83 余 2
83 ÷ 8 = 10 余 3
10 ÷ 8 = 1 余 2
1 ÷ 8 = 0 余 1
→ 八进制 1232十进制转其他进制(小数部分)
方法:小数部分 × 进制数,取整数部分作为结果,剩下的小数再乘以进制,一直循环。
注意:小数点后算的整数要正着读
例子:十进制 3.14 → 八进制:
整数部分:
3 ÷ 8 = 0 余 3 → 八进制 3
小数部分:
0.14 × 8 = 1.12 → 取整数 1
0.12 × 8 = 0.96 → 取整数 0
0.96 × 8 = 7.68 → 取整数 7
然后一直算下去…..
→ 八进制约 3.107其他进制转十进制(整数部分)
口诀:“按权展开”
方法:每位 × (进制^位数),然后相加。
例子:八进制 567 → 十进制
5×8^2 + 6×8^1 + 7×8^0 = 320 + 48 + 7 = 375
→ 十进制 375其他进制转十进制(小数部分)
方法:与整数部分相同,小数点后面为负位数
例子:十六进制 1.23 → 十进制
1×16^0 + 2×16^-1 + 3×16^-2 = 1 + 0.125 + 3/256 ≈ 1.1367
→ 十进制约 1.1367
二、C++函数使用
今天还学习了如何写函数。我的例子是写一个比较两个数大小的函数:
1 |
|
通过今天的学习,我对进制转换的口诀和函数使用有了更清晰的理解。以后遇到类似题目,再也不怕迷糊了。