导图社区 C语言 函数
函数是一组一起执行一个任务的语句。每个 C 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数。该思维导图总结了函数相关的知识点,便于对函数有一个整体上的认识。
本思维导图详细阐释了C语言中的运算符和表达式。运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C 语言内置了丰富的运算符。了解运算符和表达式是程序设计的基础,快来下载学习吧
该思维导图介绍了C语言数组的相关概念,便于对数组形成结构化的认识。数组作为一种构造数据类型在编写程序时被广泛运用。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
函数function
参数
实际参数的传递
实际参数是通过值(value)传递的
形式参数和实际参数是不同的单元,形式参数的改变不影响实际参数
形式参数在函数完成之后被清除
实际参数的转换
原因
实际参数和形式参数类型不符
编译器在调用前遇到原型
每个实际参数的值被隐式地转换为相应形式的函数类型
编译器在调用时没有遇到原型
编译器进行默认的实际参数提升
依赖默认的实际参数提升是危险的
数组
定义函数时
一维数组
可以不说明数组长度
多维数组
第一维的长度可以省略
注意
数组型实参和形参在某种意义上是同一个东西
改变数组形参,就会改变数组实参
长度参数可以小于函数的长度,不能大于
把数组传递给函数时,数组名后不需要方括号
main函数
程序终止
exit函数
位于stdlib.h中
正常终止
exit(0);
exit(EXIT_SUCCESS);
EXIT_SUCCESS是0的同意符号
异常终止
exit(EXIT_FAILURE);
可以在任何地方调用
return
main函数中执行return 0会终止程序
exit会立即终止程序; return在main中被执行到时才会终止程序
返回值
正常情况下,main的返回类型是int
main函数的返回值是状态码
如果程序正常终止,main函数应该返回0
否则可以返回一个非0值
每一个值代表了一种状态
main函数没有参数,可以不写或写void
递归
函数的嵌套调用
在函数中调用另一个函数
定义
一个函数可以自己调用自己,称这个函数是递归的recursive
大概就是在一个函数自己调用自己的方法
递归问题
特征
用低阶的项来定义高阶的项
有明确的终止条件
例
选择排序
分治法divide-and-conquer
快速排序
优缺点
优点
简洁
缺点
耗费资源
概念
组合在一起的、完成一定功能的、并且被命名的语句序列
将程序划分为相对独立的小块利于理解和修改程序
避免编写重复的代码
可在不同的程序中使用
函数的定义
返回类型 函数名 (形式参数列表){ 函数体 }
说明
没有返回值的函数可以指定其返回值类型为void
形式参数
每个形式参数需要说明其类型
没有形式参数括号内什么都不写或写void
形式参数间用逗号分割
函数体
函数体可以包含声明(C99)和语句
返回值为void的函数返回值可以为空
函数调用
调用方法
由函数名和实际参数列表组成,实际参数列表用圆括号括起来
如果函数有参数,调用时实际参数不能加类型
没加圆括号的函数名是合法的,但是不起作用
非void型函数调用产生的值可以存储在变量中
函数的声明
隐式声明implicit declaration
编译器自动进行
返回值默认为int
函数返回值不为int时会报错
函数声明function declaration
语法
返回类型 函数名 (形式参数);
函数的声明必须与函数的定义一致
声明时形式参数的名字是可选的
函数原型(prototype)声明
函数声明在main函数之前
函数在main函数之后
return语句
作用
将函数运算的结果返回到调用它的地方
return [表达式]
非void函数必须有return语句
在函数内部的任何地方都能用return语句
表达式的类型与返回值不匹配时,系统将会进行隐式类型转换