1.函数: 能够完成特定功能的代码段
2.函数定义一般形式:
返回值类型 函数名(形式参数列表)
{
声明部分
语句部分
}
3.作用:1)提高代码的可读性 2)提高代码的重用性
4.函数参数:
1)形式参数:定义函数的时候,函数后面的括号中的参数
2)实际参数:主调函数调用被调函数的时候,给被调函数传递的参数
二、函数分类
1.从用户使用的角度来分:
1)库函数。编译器提供,用户直接调用即可。
2)用户自定义。用户根据实际情况自己定义的函数。
2.从函数形式分类:
1)无参函数
2)有参函数
3.有返回值函数和无返回值函数
三、函数调用
1. 在调用函数的时候,要对调用函数进行声明。
2.声明格式:返回值类型函数名(形式参数列表);形式参数列表可以只写参数的类型。
3.当函数定义在调用函数前面时,可以直接调用,可以不用进行函数声明。但在后面定义时,在主调函数中必须对调用的函数进行声明。
4.函数递归调用:函数调用自身的现象。
四、#include的使用
文件包含是C语言预处理程序的另一个重要功能。
1.文件包含命令的格式:
1)#include包含的可以是一个头文件,也可以使用户自定义的文件
2)包含自己定义的文件的时候可以使用#include" 文件名"
3)包含系统头文件的时候,用#include < 文件名>
2. 文件包含的实质:
文件包含的功能是把指定的文件插到该命令行位置取代命令行,从而把插入的文件和当前程序文件连成一个源代码文件。
3.#include 文件的搜索顺序:当前目录 ---> 编译器目录 ---> 系统目录--->最后报错
4.模块化编程概念:即多文件开发,就是多文件(.c 文件)编程,一个.c文件和一个.h文件构成一个模块。
五、示例程序
程序一:用递归实现求n的阶乘
#include <stdio.h> int jChen(int n){ int div; if(n==1){ div=1; } else { div=n*jChen(n-1); //递归操作 } return div; } void main(){ int n; printf("请输入要求的阶乘n的值:"); scanf("%d",&n); printf("%d!=%d\n",n,jChen(n)); }
程序二:用递归实现求一个数的n次方
#include <stdio.h> int fun(int x,int y){ int div=0; if(y==1){ div=x; } else { div=x*fun(x,y-1); } return div; } void main(){ int x,y; printf("x的y次方,请输入x、y的值:"); scanf("%d %d",&x,&y); printf("%d的%d次方=%d\n",x,y,fun(x,y)); }
这篇博客通过C语言实现了一个计算阶乘的函数jChen,利用递归操作完成n的阶乘计算。在main函数中,用户输入一个数值n,程序会输出n的阶乘结果。

9664

被折叠的 条评论
为什么被折叠?



