当前位置: 首页 > news >正文

C语言基础总结 ( 一 )----------函数和进制的总结

1. 函数分类
     1) 无参无返回值函数一般用于执行某些固定的功能。(打印logo)
     2) 无参有返回值函数一般用于获取某些数据或结果。(获取数字)
     3) 有参无返回值函数一般利用参数完成某些特定功能。(根据传入数字生成星星矩阵)
          实参与形参的传递过程,两个参数互不相干.
     4) 有参有返回值函数一般用于处理数据,得到处理结果。(数据的转换、计算和统计整合数据)
2. 递归函数
     1)递归需要可以跳出才有意义
     2)主调函数就是被调函数
     案例:  1. 等差数列     1 3 5 7 9...
               2. 阶乘     1 2 6 24 120...
               3. Fibonacci数列     1 1 2 3 5 8 13...
               4. power函数     1 2 4 8 16 32 64...
               5. 快速排序
3. 进制换算
     进制间的换算如下表:
十进制
八进制
十六进制
二进制
 
十进制
八进制
十六进制
二进制
0
00
0x0
0
 
8
010
0x8
1000
1
01
0x1
1
 
9
011
0x9
1001
2
02
0x2
10
 
10
012
0xa
1010
3
03
0x3
11
 
11
013
0xb
1011
4
04
0x4
100
 
12
014
0xc
1100
5
05
0x5
101
 
13
015
0xd
1101
6
06
0x6
110
 
14
016
0xe
1110
7
07
0x7
111
 
15
017
0xf
1111
4. 常见的进制转换
     10 -> 2:除以 2 倒取余数法(小数部分乘以 2 取整)
     2 -> 10:按权展开
     2 -> 16:4 合 1 法。整数部分自右向左 4 个为一组,小数部分从左至右 4 个一
           组,不够补零。然后每组单独转换。
     16 -> 2:1 拆 4 法。即每一位数字拆成 4 个二进制。
     2 -> 8:3 合 1
     8 -> 2:1 拆 3
5. 原码 反码 和 补码
     正数:反码 == 补码 == 原码
     负数:原码即为符号 +二进制
                 反码 == 原码除符号位取反
                 补码 == 反码 + 1
6. 位运算
     1) 按位于 &    同 1得1(同意) 把一个数字转换成2进制显示出来
     2) 按位或 |    同0得0   (铜铃
     3) 按位异或 ^    相同为0不同为1
     4) 按位取反 ~     ~1 = 0
     5) 左移 <<     左移 n 位 好比乘以 2 的 n 次方
     6) 右移 >>     右移 n 位 好比除以 2 的 n 次方

转载于:https://www.cnblogs.com/zhaoyanpeng/p/4348884.html

相关文章:

  • 类似qq的IM聊天应用源码
  • NEC Topaz电话交换机简单管理
  • Android异步加载全解析之引入一级缓存
  • 30.图片灯箱插件——lightBox
  • 等待实习的offer中的想法
  • WebStorm提示快捷键
  • 在VMware Workstation上安装Kali Linux
  • windows运行打开服务命令的方法 :
  • AppCode cocoapods install 慢
  • ActiveMQ的集群与高可用
  • 【C++】atoi与stoi
  • iPhone/iPad被停用怎么办 3招轻松解锁
  • 新手如何有效地学习.NET
  • 我有一个idea,但是没有钱,又没技术怎么办?
  • php生成随机密码的几种方法
  • [译] 怎样写一个基础的编译器
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • centos安装java运行环境jdk+tomcat
  • Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
  • iOS编译提示和导航提示
  • JavaScript学习总结——原型
  • jdbc就是这么简单
  • MaxCompute访问TableStore(OTS) 数据
  • MYSQL 的 IF 函数
  • RxJS: 简单入门
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • Vue小说阅读器(仿追书神器)
  • 初识 beanstalkd
  • 大主子表关联的性能优化方法
  • 回顾2016
  • 如何解决微信端直接跳WAP端
  • 如何胜任知名企业的商业数据分析师?
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 移动端解决方案学习记录
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 《天龙八部3D》Unity技术方案揭秘
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​力扣解法汇总946-验证栈序列
  • #HarmonyOS:Web组件的使用
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (九十四)函数和二维数组
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (强烈推荐)移动端音视频从零到上手(上)
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (转)c++ std::pair 与 std::make
  • .gitattributes 文件
  • .NET 4.0中的泛型协变和反变
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .Net mvc总结
  • .pings勒索病毒的威胁:如何应对.pings勒索病毒的突袭?
  • /proc/stat文件详解(翻译)