我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C语言的函数怎么定义和使用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C语言的函数怎么定义和使用

本篇内容主要讲解“C语言的函数怎么定义和使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言的函数怎么定义和使用”吧!

    关于函数

    函数是C语言的基本单元,函数中包含实现程序功能的代码。

    C语言程序的入口位于main()函数之中,为了方便组织配合,调试和运行,一般是用main函数作为主调函数,通过调用其他的函数来实现程序的运行。

    他们的关系图如下:

    C语言的函数怎么定义和使用

    1. 函数的定义形式

    先给大家看看完整的函数代码格式,先有个大概印象

    int add(int a,int b);//这是函数声明,告诉系统有这样一个函数//注:如果函数写在main函数之前,那这句代码是可以省略的int add(int a,int b){int c=a+b;return c;}
    • 函数头

    格式:

    返回类型 函数名 (参数1,参数2,…)

    对于上面函数例子int add(int a,int b)来说,add前面的int是返回类型,add是函数名,int a 是第一个参数,int b 是第二个参数。

    翻译: 定义了一个名为add的函数,向函数传入两个整形数据后,函数会返回一个函数内部处理后的整形数据。

    • 函数体

    函数名后带括号里的全部内容。函数体内部包括声明变量和执行完成函数功能的代码。

    解释: 这里声明了整形变量c,用c接受了参数a和参数b相加后的值,然后add函数返回c的值。

    2. 函数的声明

    函数的声明的告诉编译器有一个函数叫什么,参数是什么,返回类型是什么。但是具体内容还是要看函数内部的功能代码。

    形式:

    返回类型 函数名 (参数) ;

    注意要有";"来结束声明。

    3. 返回语句

    在C语言学习中会经常看到这样一句代码return 0;这也是main函数的最后一句代码,其作用有以下两点:

    • 立即从当前函数中退出,返回到调运这个函数的程序中。

    • 将函数的返回值待会到调用这个函数的程序中。

    来给大家看个例子:

    //int Add5(int n);//这里的函数声明在main函数之前,可以省略上面一行的代码int Add5(int n){return n + 5;//看看return后面的语句能不能被执行printf("能执行的话吱一声");}int main(){int a = 1,b=0; b = Add5(b); printf("%d", b); return 0;}

    C语言的函数怎么定义和使用

    return 后面的代码是不会运行的。

    4. 函数参数

    参数根据其传送的方式分为形式参数和实际参数两种。

    4.1 形式参数(传值调用)

    形式参数的作用就算传送数值,它把参数的数值传入函数,但参数本身的值是不会被函数修改的,前面举的例子都是用的形参(形式参数的简称)。

    下面给大家看看例子:

    void fuc(int n);//void类型即返回类型为空,不会有返回值,但还是会运行内部的代码。//这里的声明不能省!函数的定义在main函数下面。int main(){int a = 10;fuc(a);//将a的值传给了nprintf("%d", a);return 0;}void fuc(int n)//这里是函数的定义{n = 0;}

    C语言的函数怎么定义和使用

    结果打印a的值为10,没有被fuc()修改成0。

    4.2 实际参数(传址调用)

    实际参数是通过把参数的地址传到函数内部,函数通过地址直接修改实际变量的值,因此,实际参数是可以通过函数修改的。

    这里看看传递实参的效果:

    void fuc(int* n);//改动1 n的类型是指针,它存的是实际变量的地址int main(){int a = 10;fuc(&a);//改动二 &为取地址符,直接获取变量的地址,这里是把a的地址传送到函数内部printf("%d", a);return 0;}void fuc(int* n)//改动三 其实和改动一是一样的//这里的变量是n,n的类型是int*,n现在是变量a的地址{*n = 0;}

    对于*n = 0;

    *为解引用操作符,可以取出地址里面储存的值这里是把n中储存的地址对应的数赋值为0

    C语言的函数怎么定义和使用

    运行结果如下,a的值被更改为0

    C语言的函数怎么定义和使用

    4.3 无参数

    很多时候函数是不需要参数的,没有参数是不会影响函数运行的,一般打印菜单的话是不用设置参数的,这里随便给大家展示一下:

    void  Member_Menu();void  Member_Menu(){printf("*******************\n");printf("用户管理:>>\n请输入您想进行的操作:\n1.会员添加\n2.会员删除\n3.会员修改\n");}

    运行时函数的功能就是打印菜单。

    5. 函数的调用

    5.1 嵌套调用

    函数内部是可以再调用其他函数的。如:

    void fuc1(){   printf("函数1");   } void fuc2() { printf("函数2"); } void fuc3() {fuc1();fuc2(); } int main(){fuc3();return 0;}

    C语言的函数怎么定义和使用

    5.2 函数递归

    递归简单来说是自己调用自己,这种调用十分巧妙,它可以用少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。

    递推实现的重点:

    • 找到递推公式

    • 设置结束标志

    现在给大家展示一下递归的使用:

    斐波那契数列:F(0)=1,F(1)=1,F(n) = F(n-1) + F(n-2) (n>=2)

    递归版本:

    int fib(int n){ if (n <= 2)          return 1;    else    return fib(n - 1) + fib(n - 2);}

    非递归版本:

    int Fib(){int n,m=1,k,j,i=0;scanf_s("%d", &n);if (n == 0 || 1 == n)i = 1;if (n > 1){for (k = 1, i = 1; k < n; k++){j = i;//储存i即n-1i += m;//n=n-1  +n-2m = j;//m==f(n-2)变成n-1,也就是下一个的n-2}}printf("%d", i);}

    到此,相信大家对“C语言的函数怎么定义和使用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    C语言的函数怎么定义和使用

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    C语言的函数怎么定义和使用

    本篇内容主要讲解“C语言的函数怎么定义和使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言的函数怎么定义和使用”吧!关于函数函数是C语言的基本单元,函数中包含实现程序功能的代码。C语言程序
    2023-06-30

    c语言怎么调用自定义函数

    要调用自定义函数,可以按照以下步骤进行:1. 在调用自定义函数之前,需要先进行函数的声明。函数声明一般写在程序的开头部分,表示该函数的存在以及函数的返回值类型和参数列表。例如:```c// 函数声明int add(int a, int b)
    2023-09-15

    c语言怎么定义函数并调用

    c语言中定义和调用函数的步骤:定义函数:使用return_type function_name (parameter_list) { 函数体 }语法,指定返回类型、函数名、参数列表和函数体。调用函数:使用function_name(actu
    c语言怎么定义函数并调用
    2024-05-13

    C语言函数有哪些及怎么定义使用

    本篇内容介绍了“C语言函数有哪些及怎么定义使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、函数是什么?维基百科中对函数的定义:子程序在
    2023-06-30

    C语言一维数组怎么定义和使用

    在C语言中,一维数组的定义和使用如下:1. 定义一维数组:- 声明数组的类型和名称,例如:int arr[5];- 可以在声明时同时初始化数组,例如:int arr[5] = {1, 2, 3, 4, 5};2. 使用一维数组:- 赋值操作
    2023-10-10

    c语言中怎么定义bit函数

    在C语言中,可以使用位域(bit-field)来定义一个函数。位域是一种特殊的结构体成员,可以指定成员占用的位数。下面是一个例子,演示了如何定义一个位域函数:#include struct {unsigned int b0:1;unsi
    2023-10-23

    c语言怎么自定义函数并调用

    c语言中自定义函数需遵循以下步骤:函数头:声明返回类型、名称和参数列表。函数体:包含执行任务的代码块。调用自定义函数时,使用函数名称和参数列表。如何在 C 语言中自定义函数并调用在 C 语言中,自定义函数是用于将代码块封装成一个独立单元,
    c语言怎么自定义函数并调用
    2024-05-13

    Go语言函数怎么定义与使用

    今天小编给大家分享一下Go语言函数怎么定义与使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.前言函数是一段代码的片段,
    2023-07-04

    C语言结构体数组怎么定义和使用

    这篇文章主要讲解了“C语言结构体数组怎么定义和使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言结构体数组怎么定义和使用”吧!介绍一个结构体变量可以存放一个学生的一组信息,可是如果有
    2023-06-25

    C语言宏定义怎么使用

    这篇文章主要讲解了“C语言宏定义怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言宏定义怎么使用”吧!一、C语言中函数的“缺陷”实参和形参之间仅仅是值传递,因此,函数中无法直接改变
    2023-06-30

    c语言怎么自定义函数并调用数据

    自定义函数在 c 中的定义和调用:定义:使用函数头(指定名称、参数和返回类型)和函数体(包含代码)。调用:使用函数名称后跟实际参数,括在圆括号内。如何在 C 语言中定义和调用自定义函数定义自定义函数在 C 语言中,自定义函数由函数头和函
    c语言怎么自定义函数并调用数据
    2024-05-14

    C++友元函数怎么定义和使用

    C++友元函数是指一个非成员函数可以访问类的私有成员和保护成员。以下是定义和使用C++友元函数的步骤:1. 在类的声明中声明友元函数。2. 在类的定义中定义友元函数。3. 在友元函数的实现中访问类的私有成员和保护成员。下面是一个例子:```
    2023-10-11

    c语言数组怎么定义和赋值

    在C语言中,可以使用以下方式来定义和赋值数组:1. 静态数组:- 定义数组:`数据类型 数组名[数组长度];`- 赋值数组元素:`数组名[索引] = 值;`示例代码:```cint numbers[5]; // 定义一个长度为5的整型数组n
    2023-09-20

    C语言如何自定义函数

    这篇文章主要介绍了C语言如何自定义函数的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C语言如何自定义函数文章都会有所收获,下面我们一起来看看吧。先动手编写程序:#include int add
    2023-06-16

    c语言如何定义函数并调用

    在C语言中,函数定义的一般形式如下:返回值类型 函数名(参数列表){函数体}其中,返回值类型是函数执行完后返回的值的类型,可以是整数、字符、浮点数等;函数名是给函数起的一个标识符,用来在程序中调用函数;参数列表是传递给函数的参数,可以是多个
    2023-09-27

    C语言枚举型变量怎么定义和使用

    在C语言中,枚举类型(enum type)是一种自定义的数据类型,用于定义一组有限的取值,这些取值称为枚举常量(enum constants)。枚举类型的定义格式如下:```cenum enum_name {constant1,consta
    2023-10-10

    c语言怎么定义vector数组

    在C语言中,我们可以使用动态内存分配来定义一个类似于vector的数组。首先,我们需要定义一个结构体来表示这个数组,其中包含一个指向实际数据的指针和当前数组的长度和容量。typedef struct {int* data;int siz
    c语言怎么定义vector数组
    2024-02-29

    c语言中函数的定义方法是什么

    在C语言中,函数的定义通常包含以下几个部分:1. 返回类型:函数可以有不同的返回类型,如int、float、void等,用来表示函数返回的数据类型。2. 函数名:用来标识函数的名称,可以根据需要自定义。3. 参数列表:函数可以接受一定数量的
    2023-09-29

    c语言函数的定义与调用方法是什么

    C语言函数的定义和调用方法如下:1. 函数的定义:在C语言中,函数的定义包括函数的返回类型、函数名、参数列表和函数体。函数的定义一般写在main函数之前或者使用函数原型声明。函数定义的一般形式如下:返回类型 函数名(参数列表) {函数体}例
    2023-08-18

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录