【C语言】第四篇·函数调用

这篇博客通过C语言实现了一个计算阶乘的函数jChen,利用递归操作完成n的阶乘计算。在main函数中,用户输入一个数值n,程序会输出n的阶乘结果。
一、函数
    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)); }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值