这周的学习了函数相关的c语言知识,以下是自己对学习函数的总结,有不足之处欢迎指出!
1.函数的基本概念
函数相当于一段可以反复使用的代码,合理使用可以省时省力地编写代码。
函数的基本格式如下:
int 函数名(int x,int y) { (函数内容) return x;//没有返回值可以省略 }
注意
int 为返回值类型,可以替换成其他数据类型
如果函数没有返回值,返回值数据类型应为 void
()内的参数为形式参数(形参),函数调用时,会把传递的实参赋值给形参
形参只作用于函数被调用时,在函数外无效
2.函数的声明
为了使代码主次分明,函数定义通常放在主函数的后面
为了防止程序报错,这时候就需要声明
如下
void 函数名(int x, int y);
3.函数的递归
下面是一段计算阶乘的代码:
#include<stdio.h> int M(int x) { if (x == 0) return 1; else return x * M(x-1);//再次调用 } int main() { int i; scanf("%d", &i); printf("%d的阶乘是%d", i, M(i)); return 0; }
示例
5 5的阶乘是120
这种函数自己调用自己的函数,称为递归函数
想要理解递归函数,首先要了解它的原理
递归函数的特点就是逐层进入,再逐层退出
流程图
为了使函数不进入死循环,要给递归函数设置限制条件:
存在一个限制条件,并且每一次调用后,越来越接近这个条件
正如上面计算阶乘的例子,它每一次调用都会-1,越来越接近于限制条件。
正确理解函数,相信在今后可以更加熟练得使用它!